Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Sign in / Register
Toggle navigation
Z
znfz_autotest
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
qianyanyan
znfz_autotest
Commits
f6accf60
Commit
f6accf60
authored
Aug 25, 2020
by
gaotao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
自动化测试1.0
parent
b92a0afd
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
20 additions
and
17 deletions
+20
-17
config/config.ini
config/config.ini
+1
-0
engine/__init__.py
engine/__init__.py
+2
-2
engine/browser_engine.py
engine/browser_engine.py
+14
-12
tests/test_cases/test_login.py
tests/test_cases/test_login.py
+3
-3
No files found.
config/config.ini
View file @
f6accf60
...
...
@@ -2,6 +2,7 @@
[browserType]
#browserName = Firefox
browserName
=
Chrome
driverPath
=
r"C:
\U
sers
\8
0980
\z
nfz_autotest
\d
river
\c
hromedriver.exe"
#browserName = IE
[testUrl]
...
...
engine/__init__.py
View file @
f6accf60
...
...
@@ -4,7 +4,7 @@ from engine.logger import Logger
import
os
,
time
def
get_engine
(
file
,
url
):
def
get_engine
(
file
,
url
=
None
,
login
=
True
):
def
inner
(
f
):
def
wapper
(
*
args
,
**
kwargs
):
...
...
@@ -15,7 +15,7 @@ def get_engine(file, url):
image_path
=
os
.
path
.
join
(
image_path
,
log_name
)
image_path
+=
'.png'
engine
=
BrowserEngine
(
image_path
,
log_name
,
url
.
upper
()
)
engine
=
BrowserEngine
(
url
,
login
,
log_name
)
ret
=
f
(
engine
,
*
args
,
**
kwargs
)
...
...
engine/browser_engine.py
View file @
f6accf60
...
...
@@ -7,19 +7,21 @@ import time, os, re
class
BrowserEngine
(
ReadConfig
):
__log_name
=
"browser_engine"
def
__init__
(
self
,
image_path
,
log_name
=
__log_name
,
url
=
'URL'
):
def
__init__
(
self
,
url
,
login
,
log_name
=
__log_name
):
super
()
.
__init__
(
log_name
)
# self.__logger = super().get_logger()
self
.
_log_name
=
log_name
self
.
_browser
=
''
self
.
url
=
url
self
.
_driver_path
=
r"C:\Users\80980\znfz_autotest\driver\chromedriver.exe"
self
.
image_path
=
image_path
self
.
login
=
login
# 是否需要登录
self
.
_driver_path
=
self
.
get_browserType
(
'driverPath'
)
# self.image_path = image_path
self
.
driver
=
webdriver
.
Chrome
(
self
.
_driver_path
)
self
.
open_browser
()
self
.
login_znfz
()
self
.
format_url
()
# self.format_url()
self
.
get_page
(
self
.
url
)
self
.
driver
.
xpath
=
self
.
driver
.
find_elements_by_xpath
def
open_browser
(
self
):
...
...
@@ -31,7 +33,7 @@ class BrowserEngine(ReadConfig):
self
.
driver
.
get
(
url
)
self
.
logger
.
info
(
"Open url:
%
s"
%
url
)
time
.
sleep
(
1
)
time
.
sleep
(
0.5
)
self
.
driver
.
maximize_window
()
self
.
logger
.
info
(
"Maximize the current window."
)
self
.
driver
.
implicitly_wait
(
10
)
...
...
@@ -40,7 +42,7 @@ class BrowserEngine(ReadConfig):
return
self
.
driver
def
login_znfz
(
self
):
if
self
.
url
==
'LOGIN'
:
if
self
.
login
is
False
:
return
username
=
self
.
get_userInfo
(
'username'
)
password
=
self
.
get_userInfo
(
'password'
)
...
...
@@ -52,7 +54,7 @@ class BrowserEngine(ReadConfig):
self
.
logger
.
info
(
"tags.text:
%
s"
%
tags
.
text
)
# print(tags.text)
tags
.
click
()
time
.
sleep
(
1
)
time
.
sleep
(
0.5
)
self
.
driver
.
find_element_by_xpath
(
'//*[@id="rc-tree-select-list_1"]/ul/li/ul/li[3]/span[1]'
)
.
click
()
...
...
@@ -61,12 +63,12 @@ class BrowserEngine(ReadConfig):
self
.
logger
.
info
(
"tags2.text:
%
s"
%
tags2
.
text
)
# print(tags2.text)
tags2
.
click
()
time
.
sleep
(
1
)
time
.
sleep
(
0.5
)
self
.
driver
.
find_element_by_xpath
(
'//*[@id="username"]'
)
.
send_keys
(
username
)
self
.
driver
.
find_element_by_xpath
(
'//*[@id="password"]'
)
.
send_keys
(
password
)
self
.
driver
.
find_element_by_xpath
(
'//*[@id="root"]/div/div/div[2]/form/div[4]/div/div/span/button'
)
.
click
()
return
self
.
driver
time
.
sleep
(
0.5
)
def
format_url
(
self
):
url_key
=
self
.
url
if
self
.
url
!=
'LOGIN'
else
'URL'
...
...
@@ -79,9 +81,9 @@ class BrowserEngine(ReadConfig):
else
:
self
.
INDEXURL
=
url
def
get_page
(
self
,
url
)
:
def
get_page
(
self
,
url
):
if
url
is
None
:
return
self
.
logger
.
info
(
"the testUrl :
%
s"
%
url
)
self
.
driver
.
get
(
url
)
...
...
tests/test_cases/test_login.py
View file @
f6accf60
...
...
@@ -17,7 +17,7 @@ def teardown_function():
@
pytest
.
mark
.
login
@
get_engine
(
__file__
,
'LOGIN'
)
@
get_engine
(
__file__
,
login
=
False
)
def
test_login
(
engine
):
username
=
engine
.
get_userInfo
(
'username'
)
password
=
engine
.
get_userInfo
(
'password'
)
...
...
@@ -50,7 +50,7 @@ def test_login(engine):
@
pytest
.
mark
.
login
@
get_engine
(
__file__
,
'LOGIN'
)
@
get_engine
(
__file__
,
login
=
False
)
def
test_login_pwerr
(
engine
):
username
=
engine
.
get_userInfo
(
'username'
)
password
=
engine
.
get_userInfo
(
'password'
)
...
...
@@ -98,7 +98,7 @@ def test_login_pwerr(engine):
@
pytest
.
mark
.
login
@
get_engine
(
__file__
,
'LOGIN'
)
@
get_engine
(
__file__
,
login
=
False
)
def
test_login_usererr
(
engine
):
username
=
engine
.
get_userInfo
(
'username'
)
password
=
engine
.
get_userInfo
(
'password'
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment