bot.setup([js: false, css: false])
bot.go
"http://blog.com"
bot.siteErrorIf ('text_exists', '502
Bad Gateway')
bot.set
".//*[@id='user_login']", blog.user, "username"
bot.set
".//*[@id='user_pass']", blog.password, "password"
bot.click(".//input[@id='wp-submit']", "login
button")
bot.bannedIf
"text_exists", "ERROR : Invalid username"
bot.bannedIf
"text_exists", "ERROR : Your account has been marked as a
spammer"
bot.invalidIf
"text_exists", "ERROR"
bot.checkIf
"text_exists", 'Sign Out'
bot.go
blog.url + "/wp-admin/post-new.php"
bot.siteErrorIf('text_exists', '502 Bad
Gateway')
bot.set
".//*[@id='title']", content.title, 'post title', "input"
bot.set
".//*[@id='content']", content.body, "post body",
"textarea"
bot.click
".//input[@type='submit' and @id='publish']", 'post submit'
bot.posted
true
bot.setSuccess
bot.get(["//span[@id='view-post-btn']/a",
"//*[@id='post-preview']"], "href", "view post")
bot.setup
([js:true])
bot.go
blog.url
bot.invalidIf
"url_contains","notfound"
bot.js false
bot.go
"${blog.url}/login.htm"
bot.set
"//input[@id='login']",
blog.user,"username","input"
bot.set
"//input[@name='password']",
blog.password,"password","input"
bot.click
"//input[@type='submit' and @name='submit']","login
button","button"
bot.bannedIf "text_exists","Wrong
login/password."
bot.stopIfNot
"url_contains","index.htm"
bot.js true
bot.go
"${blog.url}/admin.php?ctrl=posts&tab=edit&blog=1"
bot.set
"//input[@id='post_title']", content.title,"post
title","input"
bot.executeJs
"activate_tinymce('post_content');"
bot.set
"//textarea[@id='post_content']", content.body,"post
content","input"
bot.click
"//input[@type='submit' and @class='submit_ok']","submit
post","button"
bot.posted true
bot.click
"Permalink","view post","text"
bot.success =
bot.url
bot.setup
([js:true])
bot.go
blog.url
bot.siteErrorIf ('text_exists',
'502 Bad Gateway')
bot.invalidIf
"url_contains","notfound"
bot.js false
bot.go
"${blog.url}/login.htm"
bot.siteErrorIf ('text_exists',
'502 Bad Gateway')
bot.set
"//input[@id='login']",
blog.user,"username","input"
bot.set
"//input[@name='password']",
blog.password,"password","input"
bot.click "//input[@type='submit'
and @name='submit']","login button","button"
bot.bannedIf
"text_exists","Wrong login/password."
bot.stopIfNot
"url_contains","index.htm"
bot.js true
bot.go
"${blog.url}/admin.php?ctrl=posts&tab=edit&blog=1"
bot.set
"//input[@id='post_title']", content.title,"post
title","input"
bot.executeJs
"activate_tinymce('post_content');"
bot.set
"//textarea[@id='post_content']", content.body,"post
content","input"
bot.click
"//input[@type='submit' and @class='submit_ok']","submit
post","button"
bot.posted
true
bot.click
"Permalink","view post","text"
bot.success =
bot.url
siteErrorIf('text_exists',
'502 Bad Gateway')
bot.setup ([js: true,
css: true, domains:['onlinegame.rail-nation.com']])
bot.go
"http://tribe.net/welcome?action=TribeLogout"
bot.set
".//*[@id='email']", blog.user,
"username","input"
bot.set
".//*[@id='password']", blog.password, "password","input"
bot.click
".//input[@type='submit' and @value='sign in']", "login
button","button"
bot.sleep 5000
bot.badProxyIf('text_exists', 'The requested URL could not
be retrieved')
bot.bannedIf('text_exists',
'Invalid e-mail or password')
bot.checkIf("text_exists",
"sign out", true, 10, 5)
bot.click
"//a[contains(text(), 'blog post')]", "new post",
"link_xpath"
bot.checkIf
"path_exists", "//*[@id='topic_subject']", true, 5, 5
bot.set
".//*[@id='topic_subject']", content.title, 'post title',
"input"
bot.set
".//*[@id='topic_body']", content.body, "post body",
"input", "TEXT"
bot.click
"submit", "submit button", "text"
bot.sleep(3000)
bot.checkIf("text_exists", "edit this post", true,
5, 5)
bot.posted
true
bot.click
"permalink", "view entry", "text"
bot.setSuccess
bot.url
bot.setup([js: false])
bot.go
"http://alplist.com/login.php"
bot.set
"//input[@id='username']", blog.user, "username",
"input"
bot.set
"//input[@id='password']", blog.password, "password",
"input"
bot.click
".//*[@type='submit' and @value='Login']", 'sign in button', 'button'
bot.invalidIf
"text_exists", "Username or Password incorrect"
bot.checkIf "text_exists",
"Logout", true
bot.go
"http://alplist.com/add_story.php"
bot.set
"//*[@id='story_url']", content.url, "url",
"input"
bot.click
".//*[@type='submit' and @value='Continue']", 'next', 'button'
bot.checkIf
"text_exists", "Story Title", true, 10, 2
content.title
= bot.left(content.title, 80)
bot.set
"//*[@id='story_title']", content.title, "subject",
"input"
bot.set
"//*[@id='story_desc']", content.body, "description",
"input"
bot.set
"story_category", "0", "category",
"radio_random"
bot.captcha("//*[@id='add_story']//img[@src='seccode.php']",
"//*[@id='security_code']")
bot.click
".//*[@type='submit' and @value='Submit Story']", 'publish bookmark',
'button'
def urlparam =
"${content.url}?p=${bot.random(1,1000)}"
bot.set("//*[@id='story_url']",
urlparam,"url", "input")
bot.click
".//*[@type='submit' and @value='Continue']", 'next', 'button'
bot.checkIf("text_exists", "More Info", true)
bot.click
"More Info", "post entry", "text"
bot.posted
true
bot.setSuccess
bot.url
bot.setup([js: true, css: true])
bot.start
"1. Login "
bot.go
"http://url.org/signin/"
bot.set
"//*[@id='username']", blog.user, "username",
"input"
bot.set
"//input[@id='password']", blog.password, "password",
"input"
bot.click ".//input[@type='submit' and
@name='submitted']", 'sign in button', 'button'
bot.invalidIf
"text_exists", "The details you have entered are incorrect"
bot.checkIf
"text_exists", "Log Out", true
bot.start
"2. Add a Bookmark"
bot.click
"Add a Bookmark", "add bookmark link", "text"
bot.set
"//*[@id='address']", content.url, "url", "input"
bot.set
"//*[@id='titleField']", content.title, "subject",
"input"
bot.set
"//input[@name='description']", bot.left(content.body, 255),
"description", "input"
bot.set
"//*[@id='tags']", content.tags, "tags", "input"
bot.captcha("//*[@id='page_2']/form//img",
"//*[@name='imagepasswd']")
bot.click
".//input[@type='submit' and @name='submitted']", 'publish bookmark',
'button'
bot.checkIf "path_exists",
"//*[@id='bookmarks']//a[contains(text(), '${content.title}')]",
true, 5, 5
bot.posted
true
//could not
get exactly URL. return my bookmarks link
bot.setSuccess
bot.url
bot.setup([js: true, css: true])
bot.start
"1. Login "
bot.go
"http://www.folkd.com/page/login.html"
bot.set
"//*[@id='username']", blog.user, "username",
"input"
bot.set
"//input[@id='password']", blog.password, "password",
"input"
bot.click
".//input[@type='submit' and @id='submit_login']", 'sign in button',
'button'
bot.invalidIf
"text_exists", "Invalid "
bot.checkIf
"text_exists", "Logout", true
bot.start
"2. Add a Bookmark"
bot.go
"http://www.folkd.com/page/submit.html"
bot.set
"//*[@id='url_page']", content.url, "url",
"input"
bot.click
".//button[@type='submit']", 'submit link', 'button'
bot.set
"//*[@id='add_title']", content.title, "subject",
"input"
bot.set
"//*[@id='add_description']", content.body, "description",
"input"
def tags =
"\"${content.tags}\""
tags =
tags.replace(",", "\" \"")
bot.set
"//*[@id='add_tags_show']", tags, "tags", "input"
bot.set(bot.get(".//div[@id='recaptcha_image']/img",
"src"), ".//*[@id='recaptcha_response_field']")
bot.click
".//input[@type='submit']", 'publish bookmark', 'button'
bot.checkIf
"text_exists", "Great! Your Link has been saved", true
bot.click "Details", "bookmark
entry", "text"
bot.posted
true
bot.setSuccess
bot.url
TODO: Duplicate article, check to append
?p=bot.random(1,1000)
TODO: Content is too long. Reduce set
description :: textarea value
bot.setup([js: false])
bot.go
"http://topseobacklinks.com/login.php"
bot.set
".//form[@id='thisform']//*[@name='username']", blog.user,
"username", "input"
bot.set
".//form[@id='thisform']//*[@name='password']", blog.password,
"password", "input"
bot.click
".//form[@id='thisform']//*[@type='submit']", 'sign in button',
'button'
bot.checkIf
"path_exists", "//a[contains(@href,'/login.php')]", true
bot.go
"http://topseobacklinks.com/submit.php"
def urlparam =
"${content.url}?p=${bot.random(1,1000)}"
bot.set
".//form[@id='thisform']//*[@id='url']", urlparam, "url",
"input"
bot.click
".//form[@id='thisform']//*[@type='submit']", 'next', 'button'
bot.invalidIf("text_exists", "Duplicate article
URL", "Duplicate article")
bot.checkIf
"path_exists", "//input[@id='title']", true, 10, 2
content.title = bot.left(content.title,
120)
bot.set
"//input[@id='title']", content.title, "subject",
"input"
bot.set
".//*[@name='category']", "1", "category",
"select_random"
bot.set
"//*[@id='bodytext']", bot.left(content.body,150),
"description", "textarea"
bot.click
".//form[@id='thisform']//input[@type='submit']", 'publish bookmark',
'button'
bot.js false
bot.checkIf
"url_contains", "upcoming", true
bot.posted
true
bot.checkIf
"text_exists", "${content.title}"
bot.click
"Read More", "bookmark entry", "text"
bot.setSuccess
bot.url
TODO: Error URL after clicked. Need to handle checking
errors in click() like go()
Error: The
requested URL could not be retrieved
bot.setup([js: false,
domains: ['google.com/_/+1', 'twitter.com', 'facebook.com', 'sharethis.com',
'addthis.com', 'prosperent.com', ‘trafficmongrel.com’]])
bot.go
"http://sfcsf.org/login.php"
bot.set
".//form[@id='thisform']//*[@name='username']", blog.user,
"username", "input"
bot.set
".//form[@id='thisform']//*[@name='password']", blog.password,
"password", "input"
bot.click
".//form[@id='thisform']//*[@type='submit']", 'sign in button',
'button'
bot.checkIf
"path_exists", "//a[contains(@href,'/login.php')]", true
def urlparam =
"${content.url}?p=${bot.random(1,1000)}"
bot.set "//*[@id='url']", urlparam,
"url", "input"
bot.js true
bot.click
".//form[@id='thisform']//*[@type='submit']", 'next', 'button'
bot.invalidIf("text_exists", "Duplicate article
URL", "Duplicate article")
bot.checkIf
"path_exists", "//input[@id='title']", true, 10, 2
bot.set
"//input[@id='title']", content.title, "subject",
"input"
bot.set
".//*[@name='category']", "1", "category",
"select_random"
bot.set
"//*[@id='bodytext']", content.body, "description",
"textarea"
bot.set(bot.get(".//div[@id='recaptcha_image']/img",
"src"), ".//*[@id='recaptcha_response_field']")
bot.click
".//form[@id='thisform']//input[@type='submit']", 'publish bookmark',
'button'
bot.js false
bot.checkIf
"text_exists", "Confirm Details", true
bot.createAndSubmitButton("//*[@id='thisform']")
bot.posted
true
bot.checkIf
"text_exists", "${content.title}"
bot.click
"Read More", "bookmark entry", "text"
bot.setSuccess
bot.url
bot.setup([driver: true])
bot.go
"http://cloudytags.com/"
bot.set
"//*[@name='user']", blog.user, 'user', "input"
bot.set
"//*[@name='pass']", blog.password, 'password', "input"
bot.click
"//*[@id='loginbut']", "Sing in button", "button"
bot.sleep 5000
bot.checkIf
"text_exists", "Logout", true, 10, 1
bot.go
"http://cloudytags.com/submit.html"
bot.set
"//*[@id='submitform']/*[@name='url']", content.url, "url",
"input"
bot.click
"//*[@id='enterurlbut']", "Post it! step1",
"button"
// Wait unit
adv timer will be gone away.
bot.sleep
10000
// NOTE: At
least one tag should be selected.
content.tags.split(",").eachWithIndex() {item, index ->
bot.set
"//input[@name='tag${index}']", "${item}",
"tag${index} = ${item}", "input"
};
bot.set
"//textarea[@name='ladesc']", content.title, "title",
"textarea"
bot.set(bot.get(".//div[@id='recaptcha_image']/img",
"src"), ".//*[@id='recaptcha_response_field']")
bot.click
"//*[@id='addlinkbut']", "Post it! step2",
"button"
bot.invalidIf
"text_exists", "We got an error adding your link in our
database", "Some problems with posted links. Probably link is
dublicated."
bot.checkIf
"text_exists", "Well DONE!", true, 10, 1
bot.posted
true
bot.go
"http://cloudytags.com/users/${blog.user}.html"
bot.setSuccess
bot.find(".//*[@id='ShowLinks']/table[1]/tbody/tr[1]/td[1]/a",
"Last posted url")?.getAttribute("href")
COMPLETED 7/3