亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
學(xué)習(xí)Selenium Python版初的一個(gè)小想法
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2015/3/13 15:15:26 ] 推薦標(biāo)簽:Selenium 單元測試 測試工具 Python 代碼 XML

  這個(gè)還是我在剛開始學(xué)習(xí)selenium的時(shí)候做的,自己覺得有點(diǎn)意思,在接下來我會(huì)基于目前我對(duì)于selenium的一些深入研究,寫下我對(duì)selenium的理解以及UIAutomation的一些理解,以此開篇吧^_^
  前段時(shí)間研究Selenium,寫了一些測試網(wǎng)頁的代碼,寫著寫著,感覺這些自動(dòng)化cases的相似度太高,多數(shù)是大同小異,基本上可以歸納為這樣三步1)找到元素 2)進(jìn)行操作, 比如點(diǎn)擊或者滑動(dòng) 3) 驗(yàn)證期望, 比如跳轉(zhuǎn)到了一個(gè)新頁面,或者新元素出現(xiàn)在屏幕中.
  比如下面:
  from selenium import webdriver
  from selenium.webdriver.support.wait import WebDriverWait
  def web_automation():
  browser=webdriver.Chrome()
  browser.get('http://www.baidu.com/')
  Input_element=browser.find_element_by_id('kw')
  Input_element.send_keys('Selenium')
  browser.find_element_by_id('su').click()
  result=browser.find_element_by_xpath('//*[@id="container"]/div[2]').is_displayed()
  assert result!=True,"Failed"
  寫的多了,這時(shí)候想,能不能有什么模板,讓我們快速的創(chuàng)建一條case,甚或者能讓一個(gè)不會(huì)Selenium的Tester也能寫自動(dòng)化case呢。
  說做做,后搞出來了下面一個(gè)雛形, 我們可以定義這樣的一個(gè)XML:
<TestCase name="ClickBackButton" scriptVersion="1.0.0">
<Executable>Chrome</Executable>
<Address>http://www.baidu.com</Address>
<Action Operate="InputSearchInfo" Type="Input" ID="kw" Content="Glow"/>
<Action Operate="Scroll" Type="Scroll" />
<Action Operate="ClickNextPageHLink" Type="Click" XPath='//*[@id="page"]/a[10]'>
<Expected XPath='//*[@id="page"]/strong/span[2]' Text="2" />
</Action>
<Action Operate="Goback" Type="Back">
<Expected XPath='//*[@id="page"]/strong/span[2]' Text="1" />
</Action>
<Action Operate="Scroll" Type="Scroll" />
<Action Operate="ClickPage6" Type="Click" XPath='//*[@id="page"]/a[5]'>
<Expected XPath='//*[@id="page"]/strong/span[2]' Text="6" />
</Action>
<Action Operate="Goback" Type="Back">
<Expected XPath='//*[@id="page"]/strong/span[2]' Text="1" />
</Action>
</TestCase>
  然后我們可以這樣來解析:
  第一步解析XML生成TestCase的list,在例子中一個(gè)Testcase:
import xml.etree.ElementTree as ET
import logging
import os
import sys
import traceback
from TestCase import TestCase
class ParseCase:
def __init__(self,xml_path):
if os.path.exists(os.getcwd()+"\"+xml_path) or os.path.exists(xml_path):
self.caseList=[]
try:
xml=ET.parse(xml_path)
root=xml.getroot()
self.caseList=root.find('TestList').findall('TestCase')
except IOError as e:
print traceback.format_exc()
logging.debug(traceback.format_exc())
if self.caseList:
logging.info('No Testcase detected')
else:
logging.info('No Testcase detected')
else:
print "XML file is not exists"
logging.debug("XML file is not exists")
def getAllTestCaseList(self):
TestCases=[]
for case in self.caseList:
_testcase=TestCase(case)
TestCases.append(_testcase)
return TestCases

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 一级毛片在线免费看 | 国产日韩第一页 | 国产一区二区三区在线 | 男女毛片 | 在线观看精品视频网站www | 少妇人妻挤奶水中文视频毛片 | 黄色小视频网 | 77se77亚洲欧美在线大屁股 | 色图综合网 | 狠狠干天天 | 黄色免费视屏 | 一个人视频资源在线观看www | 国产黄视频在线观看 | 欧美性v视频播放 | 手机看高清特黄a大片 | 日本精品不卡 | 国产一区精品 | yy3341殇情影院理论片 | 国产成人欧美 | 成人免费黄色 | 久久亚洲免费视频 | 一级黄色毛片视频 | 宅男在线永久免费观看99 | 国产精品免费大片一区二区 | 成人性动漫在线观看视频 | 亚洲国产精品久久久久久网站 | 久艾草国产成人综合在线视频 | 精品国产免费一区二区 | www视频在线 | 国产欧美一区视频在线观看 | 中文字幕在线综合 | 亚洲欧美日韩中文在线制服 | 成年视频xxxxx在线入口 | 成人18免费网站 | 午夜视频入口 | 久久亚洲精品成人 | 九九热免费在线视频 | 午夜成私人影院在线观看 | 5252色欧美在线男人的天堂 | 成人国产在线视频在线观看 | 欧美色图亚洲综合 |