大纲:
-
作业复盘
-
用户关键字
-
资源文件
-
数据驱动
01:讲解作业
页面展示:
python文件(定义一个函数):
from selenium import webdriver import time def deleteAlllesson(): driver = webdriver.Chrome() driver.implicitly_wait() driver.get('http://localhost/mgr/login/login.html') #登录 driver.find_element_by_id('username').send_keys('auto') driver.find_element_by_id('password').send_keys('sdfsdfsdf') driver.find_element_by_tag_name('button').click() #删除课程 driver.implicitly_wait(1) while True: del_btns = driver.find_elements_by_css_selector('[ng-click="delOne(one)"]') if del_btns==[]: break del_btns[0].click() driver.find_element_by_class_name('btn btn-primary').click() time.sleep() #为了等待弹出框消失,接下来点击下面的删除按钮 driver.implicitly_wait(10) driver.quit() if __name__ == '__main__': deleteAlllesson()
RF文件:
*** Settings *** Library SeleniumLibrary Library st.py *** Test Cases *** 添加课程 [Setup] deleteAlllesson [Teardown] deleteAlllesson #自定义库python+selenium不要和seleniumLibrary混用 open browser http://localhost/mgr/login/login.html chrome set selenium implicit wait 10 #输入用户名和密码 input text id:username auto input text id=password sdfsdfsdf click element tag=button # click button #被操作的元素只能是button元素 #开始添加课程 click element css=[ng-click="showAddOne=true"] input text css=[ng-model="addData.name"] 初中化学 input text css=[ng-model="addData.desc"] 初中化学描述 input text css=[ng-model="addData.display_idx"] 3 click element css=[ng-click="addOne()"] ${course_name} get text css=tbody td:nth-child(2) should be equal 初中化学 ${course_name} close browser
02:用户关键字
语法:由RF层面的关键字组成
作用:类似于RF层面的函数,用于封装一些步骤
定义、使用用户关键字
- 首选我们要创建关键字表
- 用户关键字的定义和定义一个用例非常,写法非常的像
*** Settings *** Library SeleniumLibrary Library st.py *** Test Cases *** 添加课程 [Setup] deleteAlllesson [Teardown] deleteAlllesson loginwebsite addCourse 初中化学 描述 1 checkCourse 初中化学 close browser 添加课程2 [Setup] deleteAlllesson [Teardown] deleteAlllesson loginwebsite addCourse 初中语文 描述 2 checkCourse 初中语文 close browser *** Keywords *** loginwebsite #自定义库python+selenium不要和seleniumLibrary混用 open browser http://localhost/mgr/login/login.html chrome set selenium implicit wait 10 #输入用户名和密码 input text id:username auto input text id=password sdfsdfsdf click element tag=button # click button #被操作的元素只能是button元素 addCourse #开始添加课程 [Arguments] ${name} ${desc} ${idx} click element css=[ng-click="showAddOne=true"] input text css=[ng-model="addData.name"] ${name} input text css=[ng-model="addData.desc"] ${desc} input text css=[ng-model="addData.display_idx"] ${idx} click element css=[ng-click="addOne()"] checkCourse [Arguments] ${except} ${course_name} get text css=tbody td:nth-child(2) should be equal ${except} ${course_name}