Commit 933b11db authored by gaotao's avatar gaotao

基本信息控件

parent 987bbc5d
...@@ -15,7 +15,7 @@ def get_engine(file, url): ...@@ -15,7 +15,7 @@ def get_engine(file, url):
image_path = os.path.join(image_path, log_name) image_path = os.path.join(image_path, log_name)
image_path += '.png' image_path += '.png'
engine = BrowserEngine(image_path, log_name, url) engine = BrowserEngine(image_path, log_name, url.upper())
ret = f(engine, *args, **kwargs) ret = f(engine, *args, **kwargs)
......
...@@ -78,19 +78,19 @@ class BrowserEngine(ReadConfig): ...@@ -78,19 +78,19 @@ class BrowserEngine(ReadConfig):
self.logger.info("the testUrl : %s" % url) self.logger.info("the testUrl : %s" % url)
self.driver.get(url) self.driver.get(url)
def load_image(self): # def load_image(self):
print(self.image_path) # print(self.image_path)
image_dir, image_name = os.path.split(self.image_path) # image_dir, image_name = os.path.split(self.image_path)
image_list = os.listdir(image_dir) # image_list = os.listdir(image_dir)
if image_name in image_list: # if image_name in image_list:
image_name_list = list(filter(lambda x: re.findall(image_name + r'-\d{1,}\.png', x), image_list)) # image_name_list = list(filter(lambda x: re.findall(image_name + r'-\d{1,}\.png', x), image_list))
image_name_index_list = list(map(lambda x: int(x.split('-|.')[-2]) if '-' in x else 0, image_name_list)) # image_name_index_list = list(map(lambda x: int(x.split('-|.')[-2]) if '-' in x else 0, image_name_list))
next_image_name_index = max(image_name_index_list) + 1 if image_name_index_list else 1 # next_image_name_index = max(image_name_index_list) + 1 if image_name_index_list else 1
next_image_name = os.path.join(image_dir, image_name.replace('.png', f'-{next_image_name_index}.png')) # next_image_name = os.path.join(image_dir, image_name.replace('.png', f'-{next_image_name_index}.png'))
else: # else:
next_image_name = self.image_path # next_image_name = self.image_path
print(next_image_name) # print(next_image_name)
self.driver.get_screenshot_as_file(next_image_name) # self.driver.get_screenshot_as_file(next_image_name)
def __del__(self): def __del__(self):
try: try:
......
...@@ -7,6 +7,8 @@ markers= login ...@@ -7,6 +7,8 @@ markers= login
select select
addxyr addxyr
delxyr delxyr
nullxyr
gsjd gsjd
case4 reset
case5 basicmatter1
\ No newline at end of file basicmatter
\ No newline at end of file
This diff is collapsed.
# import pytest from engine import get_engine
# import sys import pytest,time
#
# sys.path.append('..')
# from basepage.check_gsjd import CheckGsjd
# @pytest.mark.select
# @pytest.mark.gsjd @get_engine(__file__,'URL')
# def test_gsid_case1(): def test_full_select(engine):
# for i in ['审查逮捕','审查起诉']:
# # browser = BrowserEngine() scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
# # driver = browser.login_znfz() if scdb:
# scdb.click()
# test = CheckGsjd('check_gsjd') else:
# driver = test.choose_gsjd() engine.logger.error(f'{i}元素获取错误')
# test.choose_gsjd_case() return
case_id = engine.get_caseId('caseId')
input = engine.driver.xpath("//input[@id='ajmc']").get(0)
if input:
input.send_keys(case_id)
else:
engine.logger.error(f'{i}---input元素获取错误')
return
time.sleep(0.5)
select = engine.driver.xpath("//button[@type='submit']").get(0)
if select:
select.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
anjian_list = engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr")
assert len(anjian_list) == 1 and anjian_list[0].get_attribute('data-row-key') == case_id
@pytest.mark.select
@get_engine(__file__,'URL')
def test_sub_select(engine):
for i in ['审查逮捕','审查起诉']:
scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
if scdb:
scdb.click()
else:
engine.logger.error(f'{i}元素获取错误')
return
case_id = engine.get_caseId('caseId')[11:-2]
input = engine.driver.xpath("//input[@id='ajmc']").get(0)
if input:
input.send_keys(case_id)
else:
engine.logger.error(f'{i}---input元素获取错误')
return
time.sleep(0.5)
select = engine.driver.xpath("//button[@type='submit']").get(0)
if select:
select.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
anjian_list = engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr")
assert len(anjian_list) == 1 and case_id in anjian_list[0].get_attribute('data-row-key')
@pytest.mark.select
@get_engine(__file__,'URL')
def test_null_select(engine):
for i in ['审查逮捕','审查起诉']:
scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
if scdb:
scdb.click()
else:
engine.logger.error(f'{i}元素获取错误')
return
case_id = engine.get_caseId('caseId')[11:-2]
anjian_list = [anjian.get_attribute('data-row-key') for anjian in engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr")]
select = engine.driver.xpath("//button[@type='submit']").get(0)
if select:
select.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
new_anjian_list = [anjian.get_attribute('data-row-key') for anjian in engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr")]
assert new_anjian_list == anjian_list
@pytest.mark.select
@get_engine(__file__,'URL')
def test_fullname_select(engine):
for i in ['审查逮捕','审查起诉']:
scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
if scdb:
scdb.click()
else:
engine.logger.error(f'{i}元素获取错误')
return
case_name = engine.get_caseId('caseName')
input = engine.driver.xpath("//input[@id='ajmc']").get(0)
if input:
input.send_keys(case_name)
else:
engine.logger.error(f'{i}---input元素获取错误')
return
time.sleep(0.5)
select = engine.driver.xpath("//button[@type='submit']").get(0)
if select:
select.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
anjian_name = engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr/td/p/span[@class='bg___2A-Dw']")[0].text
assert anjian_name == case_name
@pytest.mark.select
@get_engine(__file__,'URL')
def test_subname_select(engine):
for i in ['审查逮捕','审查起诉']:
scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
if scdb:
scdb.click()
else:
engine.logger.error(f'{i}元素获取错误')
return
case_name = engine.get_caseId('caseName')[:3]
input = engine.driver.xpath("//input[@id='ajmc']").get(0)
if input:
input.send_keys(case_name)
else:
engine.logger.error(f'{i}---input元素获取错误')
return
time.sleep(0.5)
select = engine.driver.xpath("//button[@type='submit']").get(0)
if select:
select.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
anjian_name = engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr/td/p/span[@class='bg___2A-Dw']")[0].text
assert case_name in anjian_name
@pytest.mark.select
@get_engine(__file__,'URL')
def test_errname_select(engine):
for i in ['审查逮捕','审查起诉']:
scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
if scdb:
scdb.click()
else:
engine.logger.error(f'{i}元素获取错误')
return
# case_name = engine.get_caseId('caseName')[:3]
input = engine.driver.xpath("//input[@id='ajmc']").get(0)
if input:
input.send_keys('aaa')
else:
engine.logger.error(f'{i}---input元素获取错误')
return
time.sleep(0.5)
select = engine.driver.xpath("//button[@type='submit']").get(0)
if select:
select.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
anjian_name = engine.driver.xpath("//tbody[@class='ant-table-tbody']/tr")
assert anjian_name ==[]
@pytest.mark.reset
@get_engine(__file__,'URL')
def test_reset(engine):
for i in ['审查逮捕','审查起诉']:
scdb = engine.driver.xpath(f"//span[text()='{i}']/..").get(0)
if scdb:
scdb.click()
else:
engine.logger.error(f'{i}元素获取错误')
return
# 办理阶段
select_button1 = engine.driver.xpath("//div[@id='zt']").get(0)
if select_button1:
select_button1.click()
else:
engine.logger.error(f'{i}---办理阶段-元素获取错误')
return
time.sleep(0.5)
subselect_button1 = engine.driver.xpath("//li[text()='未结']").get(0)
if subselect_button1:
subselect_button1.click()
else:
engine.logger.error(f'{i}---办理阶段-元素获取错误')
return
time.sleep(0.5)
# 移动案由
select_button2 = engine.driver.xpath("//div[@id='ysay']").get(0)
if select_button2:
select_button2.click()
else:
engine.logger.error(f'{i}---移送案由-元素获取错误')
return
time.sleep(0.5)
subselect_button2 = engine.driver.xpath("//li[text()='盗窃罪']").get(0)
if subselect_button2:
subselect_button2.click()
else:
engine.logger.error(f'{i}---移送案由-元素获取错误')
return
time.sleep(0.5)
reset = engine.driver.xpath("//button[@type='submit']").get(0)
if reset:
reset.click()
else:
engine.logger.error(f'{i}---select元素获取错误')
return
time.sleep(1)
select_button1 = engine.driver.xpath("//div[@id='zt']//div[@class='ant-select-selection-selected-value']").get(0).text
select_button2 = engine.driver.xpath("//div[@id='ysay']//div[@class='ant-select-selection-selected-value']").get(0).text
assert select_button1 == '全部'
assert select_button2 == '全部'
...@@ -68,3 +68,215 @@ def test_addxyr(engine): ...@@ -68,3 +68,215 @@ def test_addxyr(engine):
new_xyr_list = engine.driver.xpath("//div[contains(@class,'item___2HoCU')]") new_xyr_list = engine.driver.xpath("//div[contains(@class,'item___2HoCU')]")
assert len(xyr_list) - len(new_xyr_list) == 1,'嫌疑人数-1' assert len(xyr_list) - len(new_xyr_list) == 1,'嫌疑人数-1'
@pytest.mark.nullxyr
@get_engine(__file__,'JBAQ_URL')
def test_null_xyr(engine):
engine.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_犯罪嫌疑人姓名']")[0].clear()
time.sleep(0.5)
save_button = engine.xpath("//span[text()='保存']")[0]
save_button.click()
time.sleep(0.5)
message = engine.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
assert len(message) == 1
@pytest.mark.basicmatter1
@get_engine(__file__,'JBAQ_URL')
def test_nullbirth(engine):
time.sleep(0.5)
engine.driver.xpath("//div[@title='出生日期']/following-sibling::div[1]//input")[0].clear()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_nullID(engine):
time.sleep(0.5)
engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_身份证号码']")[0].clear()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
assert len(message) == 1
# @pytest.mark.basicmatter # todo
# @get_engine(__file__, 'JBAQ_URL')
# def test_nulledu(engine):
# engine.driver.xpath("//div[@id='起诉意见书_犯罪嫌疑人_0_文化程度']")[0].clear()
# time.sleep(0.5)
# save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
# save_button.click()
# time.sleep(0.5)
# message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
# assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_notnulledu(engine):
engine.driver.xpath("//div[@id='起诉意见书_犯罪嫌疑人_0_文化程度']")[0].click()
engine.driver.xpath("//li[@data='小学']")[0].click()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_nullDomicile(engine):
engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_户籍所在地']")[0].clear()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_notnullDomicile(engine):
engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_户籍所在地']")[0].clear().send_keys('123')
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_nulladdr(engine):
engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_住址']")[0].clear()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_notnulladdr(engine):
engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_住址']")[0].clear().send_keys('123')
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
# @pytest.mark.nullSpecifPerson # todo
# @get_engine(__file__, 'JBAQ_URL')
# def test_null_xyr(engine):
# # engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_住址']")[0].clear().send_keys('123')
# time.sleep(0.5)
# save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
# save_button.click()
# time.sleep(0.5)
# message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
# assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_notnullSpecifPerson(engine):
engine.driver.xpath("//div[@id='起诉意见书_犯罪嫌疑人_0_特定人员']")[0].click()
engine.driver.xpath("//li[@data='聋哑人']")[0].click()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
# @pytest.mark.nullSpecialID # todo
# @get_engine(__file__, 'JBAQ_URL')
# def test_null_xyr(engine):
# # engine.driver.xpath("//input[@id='起诉意见书_犯罪嫌疑人_0_特殊身份']")[0].clear().send_keys('123')
# time.sleep(0.5)
# save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
# save_button.click()
# time.sleep(0.5)
# message = engine.driver.xpath("//div[@class='ant-message']//span[text()='有必填项未填']")
# assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_notnullSpecialID(engine):
engine.driver.xpath("//div[@id='起诉意见书_犯罪嫌疑人_0_特殊身份']")[0].click()
engine.driver.xpath("//li[@data='国家工作人员']")[0].click()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_nullFilingTime(engine):
engine.driver.xpath("//div[@title='立案时间']/following-sibling::div[1]//input")[0].clear()
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_IncorrectFormatFilingTime(engine):
engine.driver.xpath("//div[@title='立案时间']/following-sibling::div[1]//input")[0].clear().send_keys('5月5日')
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[text()='日期格式不正确!']")
assert len(message) == 1
@pytest.mark.basicmatter
@get_engine(__file__, 'JBAQ_URL')
def test_correctFormatFilingTime(engine):
engine.driver.xpath("//div[@title='立案时间']/following-sibling::div[1]//input")[0].clear().send_keys('2020年05月05日')
time.sleep(0.5)
save_button = engine.driver.xpath("//span[text()='保存']/..")[0]
save_button.click()
time.sleep(0.5)
message = engine.driver.xpath("//div[@class='ant-message']//span[contains(text(),'保存成功')]")
assert len(message) == 1
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment