python自動化測試實例
Ⅰ 初學python,想做手機自動化測試腳本,想了解幾個問題
1、手機自動化測試Python能獨立完成嗎?可以。
2、想要學的話,看哪本教程會好些?首先學習自動化測試,然後學習python,然後結合實例學習。可以參考http://wenku..com/view/fd8b690b581b6bd97f19ea61.html
3、主要要學習的模塊內容或者方向是哪些?
Python的世界有一個開源框架Splinter,可以非常棒的模擬瀏覽器的行為(從某種意義上也可以說是人的訪問點擊行為)。Splinter提供了豐富的API,可以獲取頁面的信息,以判斷當前的行為所產生的結果
4、還有懂這行補充給我的,我另加分。。多項
多學習測試的各方面知識,python只是工具。測試的理論知識很重要。
Ⅱ 怎麼用python做自動化測試
用python做自動化測試,主要是介面測試和UI自動化測試。 自動化測試還要學習的有很多,selinum、webdriver、monkey、APP測試等等這些都要學習的,建議你去魯德,課程多樣化,學習比較扎實,自動化測試是主打課程
Ⅲ 測試人員如何使用Python代碼把自動化測試的數據保存下來進行操作呢
使用Python代碼執行自動化測試的用例, 會產生各種測試的數據, 比如運行的時間, 運行的結果值,各種有意義的臨時數據等,我們需要把這些數據保存到容器中,便於對數據的使用和修改等操作, 而在Python中保存數據有多種容器,常用的就是列表,元組,字典和字元串了 ①把測試的數據保存到列表中,是很方便對數據進行查詢和修改的, 原因是列表是Python中最為靈活也是作為常用的數據容器了,它提供了非常豐富的增刪改查和排序等功能 ②在測試中經常會對一個人物或事物做一個詳細的描述,這些描述信息一般使用字典來保存,原因是字典主要對一個人物或事物的屬性特徵進行保存的, 而且字典數據的格式一目瞭然, 便於查詢
③測試中為了保證的測試結果有效性,不能對測試的結果數據進行修改, 這些數據保存到哪裡比較合適呢? 保存到元組中最為合適, 原因是元組中的數據不允許修改只能查看, 保證數據的有效性
④測試的數據中經常會遇到類似於家庭住址,人物姓名, 買家地址, 快遞信息等數據, 這些一大串有中文有數字的信息數據,保存到哪裡比較合適呢? 保存到字元串容器中最合適了, 字元串適合記錄文本信息數據, 並且字元串提供了對文本數據非常豐富的操作方法
更高效的保存測試中的各種數據,Python中四大容器是必須掌握的,朋友在傳智播客學的軟體測試,現在月薪11.8K。
Ⅳ 如何學習python自動化測試
目前大家對Python都有一個共識,就是他對測試非常有用,自動化測試里Python用途也很廣,但是Python到底怎麼進行自動化測試呢?今天就簡單的向大家介紹一下怎麼使用Python進行自動化測試,本文只是自己的一點點分享,若有錯誤,請大家多多批評指正。這里主要介紹的是一些Python測試的框架
1、單元測試
a、unittest :Python自帶的單元測試框架
b、pyunit:Junit的Python版本
2、使用Pyhon進行Windows GUI測試
這部分的功能主要就是和大家平時使用的QTP類似。在Windows下我們可以使用pywinauto這個開源的框架:
http://code.google.com/p/pywinauto/
來個小例子:
app.Notepad.MenuSelect("Help->About Notepad")
app.AboutNotepad.OK.Click()
app.Notepad.Edit.TypeKeys ("pywinauto Works!", with_spaces = True)
呵呵,強大吧
3、使用Python進行Web自動化測試
使用Python進行Web自動化測試的工具有很多,這里就向大家推薦一下我比較熟悉的Selenium(Web Driver)吧。
http://seleniumhq.org
我的其他博客有關於Selenium的文章,大家可以看一下。
RF也是不錯的框架啊,基於關鍵字驅動的
http://robotframework.org/
twill: a simple scripting language for Web browsing
http://twill.idyll.org/
4、使用Python進行性能測試
a、Python Web Performance Tool http://pywebperf.sourceforge.net/
b、Pylot
http://www.pylot.org/gettingstarted.html
c、Pymeter
http://pymeter.sourceforge.net/
Ⅳ python如何進行自動化測試
用抄 selenium 可以襲測試網頁
http://www.testclass.net/
Ⅵ 測試新人如何使用Python代碼封裝自動化測試的用例
如何使用Python和實現自動化測試?
本文我將詳細介紹使用Appium下的Python編寫的測試的例子代碼對一個iOS的樣例應用進行測試所涉及的各個步驟,而對Android應用進行測試所需的步驟與此非常類似。
然後按照安裝指南,在你的機器上安裝好Appium。
我還需要安裝Appium的所有依賴並對樣例apps進行編譯。在Appium的工作目錄下運行下列命令即可完成此任務:
$ ./reset.sh --ios
編譯完成後,就可以運行下面的命令啟動Appium了:
$ grunt appium
現在,Appium已經運行起來了,然後就切換當前目錄到sample-code/examples/python。接著使用pip命令安裝所有依賴庫(如果不是在虛擬環境virtualenv之下,你就需要使用sudo命令):
$ pip install -r requirements.txt
接下來運行樣例測試:
$ nosetests simple.py
既然安裝完所需軟體並運行了測試代碼,大致了解了Appium的工作過程,現在讓我們進一步詳細看看剛才運行的樣例測試代碼。該測試先是啟動了樣例應用,然後在幾個輸入框中填寫了一些內容,最後對運行結果和所期望的結果進行了比對。首先,我們創建了測試類及其setUp方法:
classTestSequenceFunctions(unittest.TestCase):
defsetUp(self):
app=os.path.join(os.path.dirname(__file__),
'../../apps/TestApp/build/Release-iphonesimulator',
'TestApp.app')
app=os.path.abspath(app)
self.driver=webdriver.Remote(
command_executor='127.0.0.1:4723/wd/hub',
desired_capabilities={
'browserName':'iOS',
'platform':'Mac',
'version':'6.0',
'app': app
})
self._values=[]
「desired_capabilities」參數用來指定運行平台(iOS 6.0)以及我們想測試的應用。接下來我們還添加了一個tearDown方法,在每個測試完成後發送了退出命令:
deftearDown(self):
self.driver.quit()
最後,我們定義了用於填寫form的輔助方法和主測試方法:
def_populate(self):
# populate text fields with two random number
elems=self.driver.find_elements_by_tag_name('textField')
foreleminelems:
rndNum=randint(0,10)
elem.send_keys(rndNum)
self._values.append(rndNum)
deftest_ui_computation(self):
# populate text fields with values
self._populate()
# trigger computation by using the button
buttons=self.driver.find_elements_by_tag_name("button")
buttons[0].click()
# is sum equal ?
texts=self.driver.find_elements_by_tag_name("staticText")
self.assertEqual(int(texts[0].text),self._values[0]+self._values[1])
本文介紹到此,相信很多朋友都已經明白了。但是如果你對Nose和Python來運行Appium測試有任何問題或看法,可以給我留言,我們可以繼續交流。
Ⅶ Python做軟體自動化測試的入門提問
同在軟體測試崗位。由於同樣初學python,所以沒有太多的實踐經驗。
使用python的單元測試框架,可以建立測試類,構造測試集。
測試類中包含了common的測試方法定義,包括測試開始前建立測試環境的setUp方法和測試完成後清理還原環境的tearDown方法,最好按照約定規則(以test開頭)來命名所有的測試方法。
測試集允許你根據測試策略組合不同的測試用例並實施。
下面兩篇文章推薦看看:
http://www.ibm.com/developerworks/cn/linux/l-pyunit/
http://www.cnblogs.com/coderzh/archive/2010/08/23/custom-python-unittestoutput-as-gtest.html
有一個問題我還沒找到答案,就是如何讓單元測試框架的log輸出到文件(默認輸出到控制台)。
Ⅷ 如何用python做自動化測試
當然可以
1、編寫Python版本的minicom,這個是自動化測試日誌記錄的需要
用於控制串口輸出的字元顏色,高亮顯示出錯信息,方便開發者在線調試問題
2、控製程式控制電源、程式控制開關,這些可以自動化測試的硬體基礎
3、寫整套測試框架,控制整個測試交互流程,Case管理等等
Python運行起來效率沒那麼高,但是對於編寫來說是非常高效的。
Ⅸ Python版appium自動化測試用例怎麼導入
importos
importunittest
fromappiumimportwebdriver
fromtimeimportsleep
#
PATH=lambdap:os.path.abspath(
os.path.join(os.path.dirname(__file__),p)
)
classContactsAndroidTests(unittest.TestCase):
defsetUp(self):
desired_caps={}
desired_caps['platformName']='Android'
desired_caps['platformVersion']='4.4'
desired_caps['deviceName']='192.168.56.111:5555'
desired_caps['app']=PATH(
'../../../sample-code/apps/ContactManager/ContactManager.apk'
)
desired_caps['appPackage']='com.example.android.contactmanager'
desired_caps['appActivity']='.ContactManager'
self.driver=webdriver.Remote('http://0.0.0.0:4723/wd/hub',desired_caps)
deftearDown(self):
self.driver.quit()
deftest_add_contacts(self):
el=self.driver.find_element_by_name("AddContact")
el.click()
textfields=self.driver.find_elements_by_class_name("android.widget.EditText")
textfields[0].send_keys("AppiumUser")
textfields[2].send_keys("[email protected]")
self.assertEqual('AppiumUser',textfields[0].text)
self.assertEqual('[email protected]',textfields[2].text)
self.driver.find_element_by_name("Save").click()
#forsomereason"save"breaksthings
alert=self.driver.switch_to_alert()
#nowaytohandlealertsinAndroid
self.driver.find_element_by_android_uiautomator('newUiSelector().clickable(true)').click()
self.driver.keyevent(3)if__name__=='__main__':
suite=unittest.TestLoader().loadTestsFromTestCase(ContactsAndroidTests)
unittest.TextTestRunner(verbosity=2).run(suite)