# 判斷是否進入到完善資訊介面
try:
self.driver.find_element(
*self.perfectinfomation_school)
except nosuchelementexception:
logger.error(
'register fail!'
) self.getscreenshot(
'register fail'
)return
false
else
: self.add_register_info(
)# 註冊結果判斷
if self.check_register_status():
return
true
else
:return
false
其中,check_register_status()方法實現如下:
def
check_register_status
(self)
: self.check_ad(
) logger.info(
'====check_registerstatus===='
)try
: self.driver.find_element(
*self.button_myself)
.click(
) self.driver.find_element(
*self.username)
except nosuchelementexception:
logger.error(
'register fail!'
) self.getscreenshot(
'register_fail'
)return
false
else
: logger.info(
'register success!'
) self.getscreenshot(
'register_success'
)return
true
test_run裡用於執行測試用例並生成測試報告
import sys #此3行**,是為了用bat指令碼執行此**時避免出現找不到import的模組的錯誤。因為cmd是在工程目錄來執行,import模組時會首先在python path的環境變數中查詢
path =
from bstestrunner import bstestrunner
import unittest
import time
from common.desired_caps import logger
#指定測試用例和測試報告的路徑
test_dir =
'../test_case'
report_dir =
'../reports'
#載入測試用例
discover = unittest.defaulttestloader.discover(test_dir, pattern=
'test_register.py'
)#定義報告的檔案格式和名稱
now = time.strftime(
"%y-%m-%d %h_%m_%s"
)report_name = report_dir +
'/'+ now +
' test_report.html'
#執行用例並生成測試報告
with
open
(report_name,
'wb'
)as f:
runner = bstestrunner(stream=f, title=
"kyb test report"
, description=
) logger.info(
"start run testcase..."
) runner.run(discover)
執行測試的bat指令碼 Appium自動化框架簡介
這樣的好處是以前的webdriver api能夠直接被繼承過來,以前的webdriver各種語言的binding都可以拿來就用,省去了為每種語言開發乙個client的工作量。移動端自動化框架 跨平台 多語言 不需要修改編譯應用。ios 蘋果的uiautomation android 4.2 谷歌的 ...
Appium移動自動化框架
3 自動測試用例執行 4 持續整合環境jenkins,定時自動構建和執行測試任務。自動化始終圍繞乙個session 會話 進行。客戶端初始化乙個session 來與服務端互動,不同的語言有不同的實現方式,但是它們最終都是傳送乙個post 請求給服務端,請求中包含乙個json 物件,其被稱作 desi...
Appium移動自動化框架
3 自動測試用例執行 4 持續整合環境jenkins,定時自動構建和執行測試任務。自動化始終圍繞乙個session 會話 進行。客戶端初始化乙個session 來與服務端互動,不同的語言有不同的實現方式,但是它們最終都是傳送乙個post 請求給服務端,請求中包含乙個json 物件,其被稱作 desi...