html5页面自动化测试,使用 Selenium+PhantomJS 以静默方式完成前端页面 UI 自动化测试...

# coding=utf-8from selenium import webdriver

from selenium.webdriver.common.action_chains import ActionChains

from selenium.webdriver.common.keys import Keys

from selenium.common.exceptions import NoSuchElementException

from selenium.common.exceptions import NoAlertPresentException

import unittest, time, re

import BSTestRunner

class operation_test(unittest.TestCase):

def setUp(self):

self.driver = webdriver.PhantomJS("/Downloads/phantomjs-2.1.1-macosx/bin/phantomjs")

self.driver.implicitly_wait(30)

self.base_url = "https://www.xxxxxxxxxx.cn/"

self.verificationErrors = []

self.accept_next_alert = True

def test_operation(self):

driver = self.driver

driver.get(self.base_url + "/tenant/#/login?return_insite=https://xxxxxxxxx.cn/")

driver.set_window_size(1680,1050)

driver.find_element_by_id("email").clear()

driver.find_element_by_id("email").send_keys("XXXXX") # 隐藏账号 driver.find_element_by_id("passwd").clear()

driver.find_element_by_id("passwd").send_keys("XXXX") # 隐藏密码 driver.find_element_by_css_selector("button[type=\"submit\"]").click()

driver.find_element_by_xpath("/html/body/aside/nav/ul/li[4]/a").click()

driver.find_element_by_xpath("/html/body/div[1]/div/div[2]/div/div[1]/div[2]/span/div/div/div/div[2]/a").click()

driver.find_element_by_css_selector("input").clear()

driver.find_element_by_css_selector("input").send_keys(u"自动化新建操作")

driver.find_element_by_xpath("//div[@id='layout-content']/div/div[2]/div/section/div[3]/div/span/i").click()

time.sleep(5)

driver.find_element_by_xpath("/html/body/div[6]/div/div/ul[1]/li[2]").click()

time.sleep(3)

driver.find_element_by_xpath("/html/body/div[6]/div/div/ul[2]/li[2]").click()

driver.find_element_by_xpath("/html/body/div[6]/div/div/ul[1]/li[1]").click

time.sleep(2)

driver.find_element_by_css_selector("textarea").clear()

driver.find_element_by_css_selector("textarea").send_keys(u"自动化输入描述")

time.sleep(3)

ActionChains(self.driver).send_keys(Keys.TAB).perform()

time.sleep(3)

ActionChains(self.driver).send_keys(Keys.TAB).perform()

time.sleep(3)

ActionChains(self.driver).send_keys(Keys.TAB).perform()

time.sleep(3)

ActionChains(self.driver).send_keys(Keys.TAB).perform()

time.sleep(3)

ActionChains(self.driver).send_keys("print").perform()

time.sleep(3)

driver.find_element_by_xpath("//*[@id='layout-content']/div/div[2]/div/section[5]/button[2]").click()

time.sleep(5)

text = driver.find_element_by_xpath('//*[@id="layout-content"]/div/div[2]/div/div[1]/div[2]/span/div/div/div/div[3]/div/div/div/div/table/tbody/tr[1]/td[2]/a').text

#print text try:

self.assertEqual(operation_name.decode('utf-8'), text)

except AssertionError as e:

print '创建操作异常'

def is_element_present(self, how, what):

try: self.driver.find_element(by=how, value=what)

except NoSuchElementException as e: return False

return True

def is_alert_present(self):

try: self.driver.switch_to.alert()

except NoAlertPresentException as e: return False

return True

def close_alert_and_get_its_text(self):

try:

alert = self.driver.switch_to.alert()

alert_text = alert.text

if self.accept_next_alert:

alert.accept()

else:

alert.dismiss()

return alert_text

finally: self.accept_next_alert = True

def tearDown(self):

self.driver.quit()

self.assertEqual([], self.verificationErrors)

if __name__ == "__main__":

#unittest.main() BSTestRunner.main() # 使用BSTestRunner调用unittest

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值