import unittest
from selenium import webdriver
from time import sleep
from selenium.common import exceptions
class MyTestCase_1(unittest.TestCase): #用户权限管理
@classmethod
def setUpClass(cls): #打开网页
cls.driver = webdriver.Chrome()
cls.driver.get("http://10.112.48.41:8080/index.html")
cls.driver.maximize_window()
sleep(1)
@classmethod
def tearDownClass(cls): #关闭浏览器
sleep(3)
cls.driver.quit()
def test_case_001(self): #登陆
#验证登陆功能
self.driver.find_element_by_xpath('//*[@id="loginname"]').send_keys('admin')
self.driver.find_element_by_xpath('//*[@id="password"]').send_keys('admin')
self.driver.find_element_by_xpath('//*[@id="to-recover"]').click()
sleep(5)
url_login = self.driver.current_url
self.assertEqual(url_login,"http://10.153.48.41:8080/pss/product/frame/main.html")
'''
def test_case_002(self): #点 系统管理
self.driver.find_element_by_xpath('//ul[@id="pgwMenu"]/li[7]/a/span').click()
source = self.driver.page_source
try:
'系统管理' in source
except exceptions:
print('未进入系统管理页面')
else:
print('pass')
sleep(1)
def test_case_003(self): #点 用户权限管理
self.driver.switch_to.frame(self.driver.find_element_by_id('frameLeft'))
self.driver.find_element_by_xpath('//div[@id="leftMenu"]/ul[2]/li[1]/div/a').click()
sleep(1)
def test_case_004(self): #点 用户列表
self.driver.find_element_by_xpath('//*[@id="leftMenu"]/ul[2]/li[1]/ul/li[1]/div/a').click()
sleep(1)
def test_case_005(self): #查询
self.driver.switch_to.default_content()
sleep(1)
self.driver.switch_to.frame(self.driver.find_element_by_name('frameMain'))
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[1]/span/input[1]').send_keys('b')
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[2]/span/input[1]').send_keys('ba')
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[3]/span/input[1]').click()
self.driver.find_element_by_xpath('//*[@id="_easyui_combobox_i3_3"]').click()
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[4]/a[1]/span/span[1]').click()
sleep(2)
def test_case_006(self): #点重置
self.driver.find_element_by_xpath('//a[@id="resetUsers"]/span/span[1]').click()
sleep(2)
def test_case_007(self): #点操作
self.driver.find_element_by_xpath('//*[@id="datagrid-row-r1-2-0"]/td[8]/div/a').click()
sleep(1)
def test_case_008(self): #点返回
self.driver.find_element_by_xpath('//*[@id="onback"]/span/span[1]').click()
sleep(1)
def test_case_009(self): #点角色列表
self.driver.switch_to.default_content()
sleep(1)
self.driver.switch_to.frame(self.driver.find_element_by_id('frameLeft'))
self.driver.find_element_by_xpath('//*[@id="leftMenu"]/ul[2]/li[1]/ul/li[2]/div/a').click()
def test_case_010(self): #点角色查询
self.driver.switch_to.default_content()
sleep(1)
self.driver.switch_to.frame(self.driver.find_element_by_name('frameMain'))
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[1]/span/input[1]').send_keys('审')
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[2]/a/span/span[2]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[1]/span/input[1]').clear()
self.driver.find_element_by_xpath(
'//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[1]/span/input[1]').send_keys('审计')
self.driver.find_element_by_xpath(
'//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[2]/a/span/span[2]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[1]/span/input[1]').clear()
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[2]/a/span/span[2]').click()
sleep(2)
def test_case_011(self): #点操作
self.driver.find_element_by_xpath('//*[@id="datagrid-row-r1-2-0"]/td[4]/div/a').click()
sleep(1)
def test_case_012(self): #切换表头
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[1]/a/span[2]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[2]/a/span[1]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[3]/a/span[1]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[4]/a/span[1]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[5]/a/span[1]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[6]/a/span[1]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[7]/a/span[1]').click()
sleep(1)
self.driver.find_element_by_xpath('//*[@id="treeDemoDivpren"]/div[1]/div[3]/ul/li[8]/a/span[1]').click()
sleep(1)
def test_case_013(self): #点 返回
self.driver.find_element_by_xpath('//*[@id="onback"]/span/span[1]').click()
sleep(1)
def test_case_014(self): #点机构列表
self.driver.switch_to.default_content()
self.driver.switch_to.frame(self.driver.find_element_by_id('frameLeft'))
self.driver.find_element_by_link_text('机构列表').click()
sleep(1)
def test_case_015(self): #查询
self.driver.switch_to.default_content()
self.driver.switch_to.frame(self.driver.find_element_by_id('frameMain'))
self.driver.find_element_by_id('institutionName').send_keys('默认1')
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[2]/a/span/span[2]').click()
sleep(1)
self.driver.find_element_by_id('institutionName').clear()
self.driver.find_element_by_id('institutionName').send_keys('默认')
self.driver.find_element_by_xpath('//*[@id="pager"]/div[1]/div/div[2]/div[1]/form/div[2]/a/span/span[2]').click()
sleep(1)
def test_case_016(self): #点 操作
self.driver.find_element_by_xpath('//*[@id="datagrid-row-r1-2--1"]/td[4]/div/a').click()
sleep(1)
def test_case_017(self): #点返回
self.driver.find_element_by_xpath('//*[@id="instituForm"]/div[2]/a[2]/span/span[1]').click()
sleep(1)
def test_case_018(self): #点iMC用户同步
self.driver.switch_to.default_content()
self.driver.switch_to.frame(self.driver.find_element_by_id('frameLeft'))
self.driver.find_element_by_link_text('iMC用户同步').click()
sleep(1)
def test_case_100(self): #退出登录
self.driver.switch_to.default_content()
self.driver.find_element_by_xpath('//*[@id="menuForm"]/ul/li[9]/a/span').click()
'''
'''
class MyTestCase_2(unittest.TestCase): #系统配置管理
def test_case_019(self):
'''
if __name__ == '__main__':
unittest.main()
js使用方法:
使用js如何去掉空格:https://www.cnblogs.com/sapho/p/5416302.html
使用js如何移动滚动条:https://zhidao.baidu.com/question/626505438617053884.html
js定位方式(常用四种):
Document.getElementById(" ")
Document.getElementsByClassName(" ")[]
Document.getElementsByTagName(" ")[]
Document.getElementsByNames(" ")[]
jqery定位方式:
使用了css定位的书写方式:Id(#) Class(.) TagName()
定位类名为<btn btn-md btn-primary>的第三个元素-------->$('.btn.btn-md.btn-primary')[2]
可以是层级关系的定位:$('body div.row div.col-lg-10.col-md-12.col-sm-12.col-xm-12 table tbody tr:nth-child(2) td div div input:nth-child(1)')
输入到Console页面的context: document下的outerHTML字段。
jqery和js获取元素属性的方法:
Jquery
设置属性 $("#compman").attr("属性","值")
获取属性 $("#compman").attr("属性")
原生(JS)
设置属性 document.getElementById("").setAttribute("属性","值")
获取属性 document.getElementById("").getAttribute("属性")
另起一个网页打开访问环境
window.open("http://10.153.49.55:8080/SPlus")
利用js获取某段文本内容后,截取后十位字符串
document.getElementsByClassName("hidden-sm hidden-xs")[5].innerText.substr(-10)