创建公司
This commit is contained in:
parent
c68ef86434
commit
0046c7ac07
Binary file not shown.
11
comp_info.py
11
comp_info.py
|
@ -16,10 +16,9 @@ class CompInfo(object):
|
|||
# -------------------------------------------------
|
||||
# pro
|
||||
BASE_URL = 'https://firms.guanplus.com'
|
||||
LOGIN_DATA = ['13683139989','qq123456']
|
||||
COMP_NAME = 'autotest'
|
||||
COMP_NAME_YB = 'autotestyb'
|
||||
LOGIN_DATA = ['13683139989', 'qq123456']
|
||||
# COMP_NAME = 'autotest' # 小规模
|
||||
COMP_NAME = 'autotestyb' # 一般纳税人
|
||||
|
||||
|
||||
ENTER_COMP_INFO = [LOGIN_DATA, COMP_NAME]
|
||||
ENTER_COMP_INFO_YB = [LOGIN_DATA, COMP_NAME_YB]
|
||||
ENTER_COMP_INFO = [BASE_URL, LOGIN_DATA, COMP_NAME]
|
||||
# ENTER_COMP_INFO = [BASE_URL, LOGIN_DATA, COMP_NAME_YB]
|
||||
|
|
|
@ -1,52 +1,5 @@
|
|||
[INFO - 2017-09-27T07:44:07.828Z] GhostDriver - Main - running on port 49322
|
||||
[INFO - 2017-09-27T07:44:08.099Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.settings - {"XSSAuditingEnabled":false,"javascriptCanCloseWindows":true,"javascriptCanOpenWindows":true,"javascriptEnabled":true,"loadImages":true,"localToRemoteUrlAccessEnabled":false,"userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/538.1 (KHTML, like Gecko) PhantomJS/2.1.1 Safari/538.1","webSecurityEnabled":true}
|
||||
[INFO - 2017-09-27T07:44:08.099Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.customHeaders: - {}
|
||||
[INFO - 2017-09-27T07:44:08.099Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - Session.negotiatedCapabilities - {"browserName":"phantomjs","version":"2.1.1","driverName":"ghostdriver","driverVersion":"1.2.0","platform":"mac-10.11 (El Capitan)-64bit","javascriptEnabled":true,"takesScreenshot":true,"handlesAlerts":false,"databaseEnabled":false,"locationContextEnabled":false,"applicationCacheEnabled":false,"browserConnectionEnabled":false,"cssSelectorsEnabled":true,"webStorageEnabled":false,"rotatable":false,"acceptSslCerts":false,"nativeEvents":true,"proxy":{"proxyType":"direct"}}
|
||||
[INFO - 2017-09-27T07:44:08.099Z] SessionManagerReqHand - _postNewSessionCommand - New Session Created: a4d42be0-a357-11e7-b24c-e5621b20e5e8
|
||||
[ERROR - 2017-09-27T07:44:18.849Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.onError - msg: ReferenceError: Can't find variable: validatemobile
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[ERROR - 2017-09-27T07:44:18.849Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.onError - stack:
|
||||
onblur (https://firms.guanplus.com/login:39)
|
||||
blur (:0)
|
||||
re (:98)
|
||||
og (:122)
|
||||
Cg (:133)
|
||||
(anonymous function) (:133)
|
||||
(anonymous function) (:133)
|
||||
(anonymous function) (:134)
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[ERROR - 2017-09-27T07:44:18.918Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.onError - msg: ReferenceError: Can't find variable: validatpassword
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[ERROR - 2017-09-27T07:44:18.918Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.onError - stack:
|
||||
onblur (https://firms.guanplus.com/login:46)
|
||||
blur (:0)
|
||||
Re (:104)
|
||||
gh (:141)
|
||||
sh (:152)
|
||||
(anonymous function) (:152)
|
||||
(anonymous function) (:152)
|
||||
(anonymous function) (:153)
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[ERROR - 2017-09-27T07:44:18.919Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.onError - msg: ReferenceError: Can't find variable: signIn
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[ERROR - 2017-09-27T07:44:18.919Z] Session [a4d42be0-a357-11e7-b24c-e5621b20e5e8] - page.onError - stack:
|
||||
onclick (https://firms.guanplus.com/login:53)
|
||||
dispatchEvent (:0)
|
||||
U (:119)
|
||||
$ (:108)
|
||||
$ (:101)
|
||||
gh (:141)
|
||||
sh (:152)
|
||||
(anonymous function) (:152)
|
||||
(anonymous function) (:152)
|
||||
(anonymous function) (:153)
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[ERROR - 2017-09-27T07:44:53.975Z] WebElementLocator - _handleLocateCommand - Element(s) NOT Found: GAVE UP. Search Stop Time: 1506498293934
|
||||
|
||||
phantomjs://platform/console++.js:263 in error
|
||||
[INFO - 2017-09-29T06:46:01.711Z] GhostDriver - Main - running on port 53666
|
||||
[INFO - 2017-09-29T06:46:01.790Z] Session [dba749a0-a4e1-11e7-abe6-39574358b027] - page.settings - {"XSSAuditingEnabled":false,"javascriptCanCloseWindows":true,"javascriptCanOpenWindows":true,"javascriptEnabled":true,"loadImages":true,"localToRemoteUrlAccessEnabled":false,"userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/538.1 (KHTML, like Gecko) PhantomJS/2.1.1 Safari/538.1","webSecurityEnabled":true}
|
||||
[INFO - 2017-09-29T06:46:01.791Z] Session [dba749a0-a4e1-11e7-abe6-39574358b027] - page.customHeaders: - {}
|
||||
[INFO - 2017-09-29T06:46:01.791Z] Session [dba749a0-a4e1-11e7-abe6-39574358b027] - Session.negotiatedCapabilities - {"browserName":"phantomjs","version":"2.1.1","driverName":"ghostdriver","driverVersion":"1.2.0","platform":"mac-10.11 (El Capitan)-64bit","javascriptEnabled":true,"takesScreenshot":true,"handlesAlerts":false,"databaseEnabled":false,"locationContextEnabled":false,"applicationCacheEnabled":false,"browserConnectionEnabled":false,"cssSelectorsEnabled":true,"webStorageEnabled":false,"rotatable":false,"acceptSslCerts":false,"nativeEvents":true,"proxy":{"proxyType":"direct"}}
|
||||
[INFO - 2017-09-29T06:46:01.791Z] SessionManagerReqHand - _postNewSessionCommand - New Session Created: dba749a0-a4e1-11e7-abe6-39574358b027
|
||||
|
|
|
@ -19,14 +19,13 @@ from test_case.setting.setting_spec import SettingSpec
|
|||
from test_case.setting.contact.contact_spec import ContactSpec
|
||||
from test_case.salary.add_stuff.add_stuff_spec import AddStuffSpec
|
||||
from test_case.external.enter_comp_spec import EnterCompSpec
|
||||
from test_case.external.create_comp.create_comp_spec import CreateCompSpec
|
||||
|
||||
if __name__ == '__main__':
|
||||
testSuite = unittest.TestSuite()
|
||||
|
||||
|
||||
|
||||
# 登录测试
|
||||
# testSuite.addTest(LoginSpec('test_verify_login'))
|
||||
testSuite.addTest(LoginSpec('test_verify_login'))
|
||||
# testSuite.addTest(LoginSpec('test_unexit_username'))
|
||||
# testSuite.addTest(LoginSpec('test_wrong_password'))
|
||||
# testSuite.addTest(LoginSpec('test_empty_username'))
|
||||
|
@ -39,8 +38,7 @@ if __name__ == '__main__':
|
|||
# testSuite.addTest(SettingSpec('test_go_to_mutil_user_page'))
|
||||
# testSuite.addTest(SettingSpec('test_go_to_partner_set_page'))
|
||||
# testSuite.addTest(SettingSpec('test_go_to_tax_rate_page'))
|
||||
testSuite.addTest(ContactSpec('test_show_add_modal'))
|
||||
|
||||
# testSuite.addTest(ContactSpec('test_show_add_modal'))
|
||||
|
||||
# 工资
|
||||
# testSuite.addTest(AddStuffSpec('test_name_empty'))
|
||||
|
@ -52,6 +50,7 @@ if __name__ == '__main__':
|
|||
|
||||
# external
|
||||
# testSuite.addTest(EnterCompSpec('test_enter_comp'))
|
||||
# testSuite.addTest(CreateCompSpec('create_account_book_empty_comp_name'))
|
||||
|
||||
now = time.strftime('%Y-%m-%d %H_%M_%S')
|
||||
report_dir = './report'
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,175 @@
|
|||
from selenium import webdriver
|
||||
import time
|
||||
from util.public_page import PublicPage
|
||||
from .create_comp_elem import *
|
||||
'''
|
||||
进入帐套
|
||||
创建于2017-09-29-五
|
||||
caicai
|
||||
'''
|
||||
|
||||
|
||||
class CreateCompPage(object):
|
||||
|
||||
def __init__(self, driver):
|
||||
self.driver = driver
|
||||
|
||||
# 帐套名称
|
||||
def set_account_book_name(self, account_book_name):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(comp_name_elem)
|
||||
publicPage.set_value(input_loc, account_book_name)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when set_account_book_name=>', str(e))
|
||||
|
||||
# 法定代表人
|
||||
def set_legal_person_name(self, legal_person_name):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(
|
||||
legal_person_name_elem)
|
||||
publicPage.set_value(input_loc, legal_person_name)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when set_legal_person_name=>', str(e))
|
||||
|
||||
# 注册资本
|
||||
def set_registered_capital(self, registered_capital):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(
|
||||
registered_capital_elem)
|
||||
publicPage.set_value(input_loc, registered_capital)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when set_registered_capital=>', str(e))
|
||||
|
||||
# 选择省份
|
||||
def select_prov(self, prov):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(prov_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, prov)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when select_prov=>', str(e))
|
||||
|
||||
# 选择市
|
||||
def select_city(self, city):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(city_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, city)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when select_city=>', str(e))
|
||||
|
||||
# 选择区
|
||||
def select_dist(self, dist):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(dist_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, dist)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when select_dist=>', str(e))
|
||||
|
||||
# 住所
|
||||
def select_address(self, prov, city, dist):
|
||||
self.select_prov(prov)
|
||||
self.select_city(city)
|
||||
self.select_dist(dist)
|
||||
|
||||
# 选择成立日期
|
||||
# year:年份
|
||||
# month:月份
|
||||
# day:日期
|
||||
def select_setup_date(self, year, month, day):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_id(setup_date_elem)
|
||||
publicPage.select_date_by_ymd(drop_loc, year, month, day)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_setup_date=>', str(e))
|
||||
|
||||
# 税号
|
||||
def set_tax_num(self, tax_num):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(tax_num_elem)
|
||||
publicPage.set_value(input_loc, tax_num)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when set_tax_num=>', str(e))
|
||||
|
||||
# 行业
|
||||
def select_industry(self, industry):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
dorp_loc = self.driver.find_element_by_name(indust_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, industry)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_industry=>', str(e))
|
||||
|
||||
# 帐套性质
|
||||
# account_property:帐套性质
|
||||
def select_property(self, account_property):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(property_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, account_property)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_property=>', str(e))
|
||||
|
||||
# 启用帐套日期
|
||||
def select_enable_date(self, begin_date):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_xpath(enable_date_drop_elem)
|
||||
publicPage.click_elem(drop_loc)
|
||||
month_loc = self.driver.find_element_by_css_selector(month_elem)
|
||||
month = month_loc.text
|
||||
if month == begin_date:
|
||||
month_loc.click()
|
||||
else:
|
||||
return '选择启用帐套日期 失败!'
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_enable_date=>', str(e))
|
||||
|
||||
# 创建
|
||||
def save(self):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
btn_loc = self.driver.find_element_by_xpath(create_btn_elem)
|
||||
publicPage.click_elem(btn_loc)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when save=>', str(e))
|
||||
|
||||
# 取消
|
||||
def cancel(self):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
btn_loc = self.driver.find_element_by_xpath(create_btn_elem)
|
||||
publicPage.click_elem(btn_loc)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when cancel=>', str(e))
|
||||
|
||||
# 创建帐套
|
||||
def create_comp(self, create_comp_info):
|
||||
publicPage = PublicPage(self.driver)
|
||||
random_num = publicPage.random_num(10000)
|
||||
self.set_account_book_name(create_comp_info[0] + random_num)
|
||||
self.set_legal_person_name(create_comp_info[1])
|
||||
self.set_registered_capital(create_comp_info[2])
|
||||
self.select_address(
|
||||
create_comp_info[3], create_comp_info[4], create_comp_info[5])
|
||||
self.select_setup_date(
|
||||
create_comp_info[6], create_comp_info[7], create_comp_info[8])
|
||||
self.set_tax_num(create_comp_info[9] + random_num)
|
||||
self.select_industry(create_comp_info[10])
|
||||
self.select_property(create_comp_info[11])
|
||||
self.select_enable_date(create_comp_info[12])
|
|
@ -0,0 +1,68 @@
|
|||
from selenium import webdriver
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
import unittest
|
||||
from .create_comp_page import CreateCompPage
|
||||
from util.read_excel import ReadExcel
|
||||
from util.public_page import PublicPage
|
||||
from util.enter_comp_page import EnterCompPage
|
||||
'''
|
||||
进入帐套
|
||||
创建于2017-09-29-五
|
||||
caicai
|
||||
'''
|
||||
|
||||
|
||||
class CreateCompSpec(unittest.TestCase):
|
||||
create_account_book_data_dir = '.test_data/cai/create_account_book_data.xlsx'
|
||||
|
||||
def setUp(self):
|
||||
self.driver = webdriver.Chrome()
|
||||
# self.driver = webdriver.PhantomJS()
|
||||
self.driver.implicitly_wait(30)
|
||||
self.driver.set_window_size(1280, 800)
|
||||
|
||||
def create_account_book_empty_comp_name(self, account_book_info):
|
||||
"""创建帐套-帐套名称为空,红框提醒保存失败"""
|
||||
page = CreateCompPage(self.driver)
|
||||
publicPage = PublicPage(self.driver)
|
||||
readExcel = ReadExcel(self.create_account_book_data_dir)
|
||||
excel_date = readExcel.get_value_by_row(0,1)
|
||||
for account_book_data in excel_date:
|
||||
page.create_comp(account_book_data)
|
||||
page
|
||||
result = publicPage.has_danger_is_show()
|
||||
self.assertEqual(result, 1)
|
||||
self.assertNotIn('company-list', self.driver.current_url)
|
||||
|
||||
def create_account_book_empty_legal_person(self, account_book_info):
|
||||
"""创建帐套-法定代表人为空,红框提醒,保存失败"""
|
||||
page = CreateCompPage(self.driver)
|
||||
publicPage = PublicPage(self.driver)
|
||||
readExcel = ReadExcel(self.create_account_book_data_dir)
|
||||
excel_date = readExcel.get_value_by_row(0,2)
|
||||
for account_book_data in excel_date:
|
||||
page.create_comp(account_book_data)
|
||||
result = publicPage.has_danger_is_show()
|
||||
self.assertEqual(result, 1)
|
||||
self.assertNotIn('company-list', self.driver.current_url)
|
||||
|
||||
def create_account_book_empty_legal_person(self, account_book_info):
|
||||
"""创建帐套-成立日期为空,红框提醒,保存失败"""
|
||||
page = CreateCompPage(self.driver)
|
||||
publicPage = PublicPage(self.driver)
|
||||
readExcel = ReadExcel(self.create_account_book_data_dir)
|
||||
excel_date = readExcel.get_value_by_row(0,2)
|
||||
for account_book_data in excel_date:
|
||||
page.create_comp(account_book_data)
|
||||
result = publicPage.has_danger_is_show()
|
||||
self.assertEqual(result, 1)
|
||||
self.assertNotIn('company-list', self.driver.current_url)
|
||||
|
||||
def tearDown(self):
|
||||
self.driver.quit()
|
||||
|
||||
|
||||
if __name__ == '_main_':
|
||||
unittest.main()
|
|
@ -4,6 +4,12 @@ import os
|
|||
import time
|
||||
from util.enter_comp_page import EnterCompPage
|
||||
from comp_info import CompInfo
|
||||
'''
|
||||
进入帐套
|
||||
创建于2017-09-28-四
|
||||
caicai
|
||||
'''
|
||||
|
||||
|
||||
class EnterCompSpec(unittest.TestCase):
|
||||
|
||||
|
@ -13,16 +19,13 @@ class EnterCompSpec(unittest.TestCase):
|
|||
self.driver.implicitly_wait(30)
|
||||
self.driver.maximize_window()
|
||||
|
||||
|
||||
def test_enter_comp(self):
|
||||
page = EnterCompPage(CompInfo.BASE_URL,self.driver)
|
||||
page.enter_comp(CompInfo.ENTER_COMP_INFO_YB)
|
||||
|
||||
page = EnterCompPage(self.driver)
|
||||
page.enter_comp(CompInfo.ENTER_COMP_INFO)
|
||||
|
||||
def tearDown(self):
|
||||
self.driver.quit()
|
||||
|
||||
|
||||
if __name__ == '_main_':
|
||||
unittest.main()
|
||||
|
||||
|
Binary file not shown.
|
@ -6,79 +6,145 @@ sys.path.append(os.path.abspath(os.path.dirname(__file__) + '/' + '../..'))
|
|||
from .login_page import LoginPage
|
||||
from util.jsonToPython_util import JsonToPython
|
||||
from selenium import webdriver
|
||||
from test_data.cai.login_data import *
|
||||
from util.public_page import PublicPage
|
||||
from comp_info import CompInfo
|
||||
from util.alert_page import AlertPage
|
||||
from util.danger_page import DangerPage
|
||||
from util.read_excel import ReadExcel
|
||||
from test_data.cai.login_data import *
|
||||
|
||||
# 登录测试
|
||||
# 修改于2017-09-29-五
|
||||
# caicai
|
||||
|
||||
|
||||
class LoginSpec(unittest.TestCase):
|
||||
|
||||
login_test_data_dir = './test_data/cai/login_test_data.xlsx'
|
||||
|
||||
def setUp(self):
|
||||
self.url = 'https://web-gyz-stage.guanplus.com'
|
||||
# self.url = 'https://web-gyz-stage.guanplus.com'
|
||||
# self.driver = webdriver.Chrome()
|
||||
self.driver = webdriver.PhantomJS()
|
||||
self.driver.implicitly_wait(30)
|
||||
|
||||
def test_login(self):
|
||||
loginPage = LoginPage(self.url, self.driver)
|
||||
loginPage.login(['18514509382','qq123456'])
|
||||
self.assertEqual("杨春红",self.driver.find_element_by_xpath('//*[@id="personalInfoDropdownMenu"]/span').text)
|
||||
loginPage.login(['18514509382', 'qq123456'])
|
||||
self.assertEqual("杨春红", self.driver.find_element_by_xpath(
|
||||
'//*[@id="personalInfoDropdownMenu"]/span').text)
|
||||
|
||||
def test_verify_login(self):
|
||||
"""登录管有帐"""
|
||||
loginpage = LoginPage(CompInfo.BASE_URL, self.driver)
|
||||
loginpage.login(VERIFY_LOGIN)
|
||||
readExcel = ReadExcel(self.login_test_data_dir)
|
||||
if 'dev' in CompInfo.BASE_URL:
|
||||
sheet_index = 0
|
||||
elif 'stage' in CompInfo.BASE_URL:
|
||||
sheet_index = 1
|
||||
elif 'firms' in CompInfo.BASE_URL:
|
||||
sheet_index = 2
|
||||
excel_data = readExcel.get_value_by_row(sheet_index, 1)
|
||||
for login_test_data in excel_data:
|
||||
loginpage.login(login_test_data)
|
||||
|
||||
current_url = self.driver.current_url
|
||||
self.assertIn('/app/company-list', current_url)
|
||||
page_url = self.driver.current_url
|
||||
self.assertIn('/app/company-list', page_url)
|
||||
print('登录成功!')
|
||||
|
||||
def test_unexit_username(self):
|
||||
""" 用户不存在 """
|
||||
""" 登录测试-用户不存在 """
|
||||
loginpage = LoginPage(CompInfo.BASE_URL, self.driver)
|
||||
loginpage.login(UNEXIT_USERNAME)
|
||||
readExcel = ReadExcel(self.login_test_data_dir)
|
||||
if 'dev' in CompInfo.BASE_URL:
|
||||
sheet_index = 0
|
||||
elif 'stage' in CompInfo.BASE_URL:
|
||||
sheet_index = 1
|
||||
elif 'firms' in CompInfo.BASE_URL:
|
||||
sheet_index = 2
|
||||
excel_data = readExcel.get_value_by_row(sheet_index, 2)
|
||||
for login_test_data in excel_data:
|
||||
loginpage.login(login_test_data)
|
||||
|
||||
alertpage = AlertPage(self.driver)
|
||||
publicPage = publicPage(self.driver)
|
||||
alert_msg = alertpage.get_alert_msg()
|
||||
self.assertEqual(alert_msg, '此用户不存在')
|
||||
self.assertEqual(alert_msg, excel_data[3])
|
||||
|
||||
def test_wrong_password(self):
|
||||
""" 密码不正确 """
|
||||
""" 登录测试-密码不正确 """
|
||||
loginpage = LoginPage(CompInfo.BASE_URL, self.driver)
|
||||
loginpage.login(WRONG_PASSWORD)
|
||||
readExcel = ReadExcel(self.login_test_data_dir)
|
||||
if 'dev' in CompInfo.BASE_URL:
|
||||
sheet_index = 0
|
||||
elif 'stage' in CompInfo.BASE_URL:
|
||||
sheet_index = 1
|
||||
elif 'firms' in CompInfo.BASE_URL:
|
||||
sheet_index = 2
|
||||
excel_data = readExcel.get_value_by_row(sheet_index, 3)
|
||||
for login_test_data in excel_data:
|
||||
loginpage.login(login_test_data)
|
||||
|
||||
alertpage = AlertPage(self.driver)
|
||||
alert_msg = alertpage.get_alert_msg()
|
||||
self.assertEqual(alert_msg, '密码不正确')
|
||||
self.assertEqual(alert_msg, excel_data[3])
|
||||
|
||||
def test_empty_username(self):
|
||||
""" 用户名为空 """
|
||||
""" 登录测试-用户名为空 """
|
||||
loginpage = LoginPage(CompInfo.BASE_URL, self.driver)
|
||||
loginpage.login(EMPTY_USERNAME)
|
||||
readExcel = ReadExcel(self.login_test_data_dir)
|
||||
if 'dev' in CompInfo.BASE_URL:
|
||||
sheet_index = 0
|
||||
elif 'stage' in CompInfo.BASE_URL:
|
||||
sheet_index = 1
|
||||
elif 'firms' in CompInfo.BASE_URL:
|
||||
sheet_index = 2
|
||||
excel_data = readExcel.get_value_by_row(sheet_index, 4)
|
||||
for login_test_data in excel_data:
|
||||
loginpage.login(login_test_data)
|
||||
|
||||
dangerpage = DangerPage(self.driver)
|
||||
danger_msg = dangerpage.get_text_danger_msg()
|
||||
self.assertEqual(danger_msg, '请填写手机')
|
||||
self.assertEqual(danger_msg, excel_data[3])
|
||||
|
||||
def test_empty_password(self):
|
||||
""" 密码为空 """
|
||||
""" 登录测试-密码为空 """
|
||||
loginpage = LoginPage(CompInfo.BASE_URL, self.driver)
|
||||
loginpage.login(EMPTY_PASSWORD)
|
||||
readExcel = ReadExcel(self.login_test_data_dir)
|
||||
if 'dev' in CompInfo.BASE_URL:
|
||||
sheet_index = 0
|
||||
elif 'stage' in CompInfo.BASE_URL:
|
||||
sheet_index = 1
|
||||
elif 'firms' in CompInfo.BASE_URL:
|
||||
sheet_index = 2
|
||||
excel_data = readExcel.get_value_by_row(sheet_index, 5)
|
||||
for login_test_data in excel_data:
|
||||
loginpage.login(login_test_data)
|
||||
|
||||
dangerpage = DangerPage(self.driver)
|
||||
danger_msg = dangerpage.get_text_danger_msg()
|
||||
self.assertEqual(danger_msg, '请填写密码')
|
||||
self.assertEqual(danger_msg, excel_data[3])
|
||||
|
||||
def test_typeerror_username(self):
|
||||
""" 手机格式不正确 """
|
||||
""" 登录测试-手机格式不正确 """
|
||||
loginpage = LoginPage(CompInfo.BASE_URL, self.driver)
|
||||
loginpage.login(TYPEERROR_USERNAME)
|
||||
readExcel = ReadExcel(self.login_test_data_dir)
|
||||
if 'dev' in CompInfo.BASE_URL:
|
||||
sheet_index = 0
|
||||
elif 'stage' in CompInfo.BASE_URL:
|
||||
sheet_index = 1
|
||||
elif 'firms' in CompInfo.BASE_URL:
|
||||
sheet_index = 2
|
||||
excel_data = readExcel.get_value_by_row(sheet_index, 6)
|
||||
for login_test_data in excel_data:
|
||||
loginpage.login(login_test_data)
|
||||
|
||||
dangerpage = DangerPage(self.driver)
|
||||
danger_msg = dangerpage.get_text_danger_msg()
|
||||
self.assertEqual(danger_msg, '手机格式不正确')
|
||||
self.assertEqual(danger_msg, excel_data[3])
|
||||
|
||||
def tearDown(self):
|
||||
self.driver.quit()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
|
Binary file not shown.
|
@ -22,8 +22,8 @@ class AddStuffSpec(unittest.TestCase):
|
|||
self.driver.implicitly_wait(30)
|
||||
self.driver.maximize_window()
|
||||
|
||||
enterCompPage = EnterCompPage(CompInfo.BASE_URL, self.driver)
|
||||
enterCompPage.enter_comp(CompInfo.ENTER_COMP_INFO_YB)
|
||||
enterCompPage = EnterCompPage(self.driver)
|
||||
enterCompPage.enter_comp(CompInfo.ENTER_COMP_INFO)
|
||||
|
||||
def test_name_empty(self):
|
||||
"""添加员工-员工名称为空-红框警示,保存失败"""
|
||||
|
|
Binary file not shown.
|
@ -22,7 +22,7 @@ class CompBillingSpec(unittest.TestCase):
|
|||
self.driver.maximize_window()
|
||||
|
||||
enterCompany = EnterCompany(CompInfo.BASE_URL,self.driver)
|
||||
enterCompany.enter_comp(CompInfo.ENTER_COMP_INFO_YB)
|
||||
enterCompany.enter_comp(CompInfo.ENTER_COMP_INFO)
|
||||
|
||||
def test_edit_comp_info(self):
|
||||
""" 编辑帐套信息测试"""
|
||||
|
|
Binary file not shown.
|
@ -28,7 +28,7 @@ class ContactSpec(unittest.TestCase):
|
|||
self.driver.set_window_size(1280,800)
|
||||
|
||||
enterCompPage = EnterCompPage(CompInfo.BASE_URL,self.driver)
|
||||
enterCompPage.enter_comp(CompInfo.ENTER_COMP_INFO_YB)
|
||||
enterCompPage.enter_comp(CompInfo.ENTER_COMP_INFO)
|
||||
|
||||
def test_show_add_modal(self):
|
||||
"""往来信息-测试点击添加按钮显示添加modal框"""
|
||||
|
|
|
@ -21,7 +21,7 @@ class SettingSpec(unittest.TestCase):
|
|||
self.driver.implicitly_wait(30)
|
||||
|
||||
enterCompPage = EnterCompPage(CompInfo.BASE_URL,self.driver)
|
||||
enterCompPage.enter_comp(CompInfo.ENTER_COMP_INFO_YB)
|
||||
enterCompPage.enter_comp(CompInfo.ENTER_COMP_INFO)
|
||||
|
||||
# url跳转测试
|
||||
def test_go_to_comp_billing_page(self):
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -2,120 +2,15 @@ from selenium import webdriver
|
|||
import time
|
||||
from test_case.login.login_page import LoginPage
|
||||
from .public_page import PublicPage
|
||||
from .enter_comp_elem import *
|
||||
|
||||
|
||||
class EnterCompPage:
|
||||
|
||||
# location
|
||||
create_comp_xpath = '//*[@id="body"]/company-list/div[1]/div[3]/div[2]/button[1]'
|
||||
|
||||
def __init__(self, url, driver):
|
||||
self.url = url
|
||||
def __init__(self, driver):
|
||||
self.driver = driver
|
||||
|
||||
# 帐套名称
|
||||
def set_account_book_name(self, account_book_name):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(comp_name_elem)
|
||||
publicPage.set_value(input_loc, account_book_name)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when set_account_book_name=>', str(e))
|
||||
|
||||
# 法定代表人
|
||||
def set_legal_person_name(self, legal_person_name):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(
|
||||
legal_person_name_elem)
|
||||
publicPage.set_value(input_loc, legal_person_name)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when set_legal_person_name=>', str(e))
|
||||
|
||||
# 注册资本
|
||||
def set_registered_capital(self, registered_capital):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(
|
||||
registered_capital_elem)
|
||||
publicPage.set_value(input_loc, registered_capital)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when set_registered_capital=>', str(e))
|
||||
|
||||
# 选择省份
|
||||
def select_prov(self, prov):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(prov_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, prov)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when select_prov=>', str(e))
|
||||
|
||||
# 选择市
|
||||
def select_city(self, city):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(city_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, city)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when select_city=>', str(e))
|
||||
|
||||
# 选择区
|
||||
def select_dist(self, dist):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(dist_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, dist)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when select_dist=>', str(e))
|
||||
|
||||
# 选择成立日期
|
||||
# year:年份
|
||||
# month:月份
|
||||
# day:日期
|
||||
def select_setup_date(self, year, month, day):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_id(setup_date_elem)
|
||||
publicPage.select_date_by_ymd(drop_loc, year, month, day)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_setup_date=>', str(e))
|
||||
|
||||
# 税号
|
||||
def set_tax_num(self, tax_num):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
input_loc = self.driver.find_element_by_name(tax_num_elem)
|
||||
publicPage.set_value(input_loc, tax_num)
|
||||
except Exception as e:
|
||||
print('[EnterCompPage] There was an exception when set_tax_num=>', str(e))
|
||||
|
||||
# 行业
|
||||
def select_industry(self, industry):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
dorp_loc = self.driver.find_element_by_name(indust_drop_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, industry)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_industry=>', str(e))
|
||||
|
||||
# 帐套性质
|
||||
# account_property:帐套性质
|
||||
def select_property(self, account_property):
|
||||
try:
|
||||
publicPage = PublicPage(self.driver)
|
||||
drop_loc = self.driver.find_element_by_name(property_elem)
|
||||
publicPage.select_dropdown_item(drop_loc, account_property)
|
||||
except Exception as e:
|
||||
print(
|
||||
'[EnterCompPage] There was an exception when select_property=>', str(e))
|
||||
|
||||
# 获取当前帐套名称
|
||||
def get_comp_name(self, comp_name):
|
||||
publicPage = PublicPage(self.driver)
|
||||
|
@ -127,19 +22,29 @@ class EnterCompPage:
|
|||
# 进入公司
|
||||
# comp_name 公司名称
|
||||
def enter_comp(self, enter_comp_info):
|
||||
loginPage = LoginPage(self.url, self.driver)
|
||||
loginPage = LoginPage(enter_comp_info[0], self.driver)
|
||||
publicPage = PublicPage(self.driver)
|
||||
loginPage.login(enter_comp_info[0])
|
||||
loginPage.login(enter_comp_info[1])
|
||||
comp_name_loc = self.driver.find_element_by_link_text(
|
||||
enter_comp_info[1])
|
||||
# comp_name_loc.click()
|
||||
publicPage.click_elem(comp_name_loc)
|
||||
enter_comp_info[2])
|
||||
comp_name_loc.click()
|
||||
# publicPage.click_elem(comp_name_loc)
|
||||
time.sleep(5)
|
||||
page_url = self.driver.current_url
|
||||
if 'home-page' in page_url:
|
||||
print('进入帐套成功!当前帐套名称为: ', self.get_comp_name(enter_comp_info[1]))
|
||||
print('进入帐套成功!当前帐套名称为: ', self.get_comp_name(enter_comp_info[2]))
|
||||
else:
|
||||
print('————————————进入公司失败 !————————————')
|
||||
|
||||
# 创建帐套
|
||||
create_comp(self, create_comp_info)
|
||||
def create_comp(self, create_comp_info):
|
||||
self.set_account_book_name(create_comp_info[0])
|
||||
self.set_legal_person_name(create_comp_info[1])
|
||||
self.set_registered_capital(create_comp_info[2])
|
||||
self.select_address(create_comp_info[3],create_comp_info[4],create_comp_info[5])
|
||||
self.select_setup_date(create_comp_info[6],create_comp_info[7],create_comp_info[8])
|
||||
self.set_tax_num(create_comp_info[9])
|
||||
self.select_industry(create_comp_info[10])
|
||||
self.select_property(create_comp_info[11])
|
||||
self.select_enable_date(create_comp_info[12])
|
||||
|
||||
|
|
|
@ -173,3 +173,11 @@ class PublicPage:
|
|||
return danger_msg
|
||||
except Exception as e:
|
||||
logging.error('There are an exception %s', str(e))
|
||||
|
||||
# 必填项红框警示
|
||||
def has_danger_is_show(self):
|
||||
publicPage = PublicPage(self.driver)
|
||||
ui_loc = self.driver.find_element_by_css_selector('.has-danger')
|
||||
print('publicPage.is_element_present(ui_loc)=>',
|
||||
publicPage.is_element_present(ui_loc))
|
||||
return publicPage.is_element_present(ui_loc)
|
||||
|
|
|
@ -30,10 +30,12 @@ class ReadExcel(object):
|
|||
return values
|
||||
|
||||
# 读取某一sheet中的某一行的值
|
||||
def get_value_by_row(self, sheet_index,row_index):
|
||||
def get_value_by_row(self, sheet_index, row_index):
|
||||
sheets = self.get_sheets()
|
||||
values = []
|
||||
s = sheets[sheet_index]
|
||||
print('sheet_index=>', sheet_index)
|
||||
print('row_index=>', row_index)
|
||||
for row in range(row_index):
|
||||
if row != 0:
|
||||
col_value = []
|
||||
|
|
Loading…
Reference in New Issue