小修改
This commit is contained in:
parent
4c82dff96b
commit
446b3cf5ca
|
@ -2,10 +2,10 @@
|
|||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="09a4aeb4-cd0a-454b-9878-fc6edee9400a" name="Default" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/README.md" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/common/sendEmail.py" beforeDir="false" afterPath="$PROJECT_DIR$/common/sendEmail.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/run.py" beforeDir="false" afterPath="$PROJECT_DIR$/run.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/common/url.py" beforeDir="false" afterPath="$PROJECT_DIR$/common/url.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/page/searchPage.py" beforeDir="false" afterPath="$PROJECT_DIR$/page/searchPage.py" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/testcase/test_baiduSearch.py" beforeDir="false" afterPath="$PROJECT_DIR$/testcase/test_baiduSearch.py" afterDir="false" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="TRACKING_ENABLED" value="true" />
|
||||
|
@ -43,26 +43,23 @@
|
|||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="sendEmail.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/common/sendEmail.py">
|
||||
<file leaf-file-name="pageObject.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/common/pageObject.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-133">
|
||||
<caret line="8" column="9" selection-start-line="8" selection-start-column="9" selection-end-line="8" selection-end-column="9" />
|
||||
<state relative-caret-position="608">
|
||||
<caret line="32" column="11" lean-forward="true" selection-start-line="32" selection-start-column="11" selection-end-line="32" selection-end-column="11" />
|
||||
<folding>
|
||||
<element signature="e#48#57#0" expanded="true" />
|
||||
<element signature="e#0#61#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="README.md" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="-165">
|
||||
<caret line="30" column="1" selection-start-line="30" selection-start-column="1" selection-end-line="30" selection-end-column="1" />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
<file leaf-file-name="url.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/common/url.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="114">
|
||||
<caret line="6" column="13" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
|
@ -70,8 +67,8 @@
|
|||
<file leaf-file-name="searchPage.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/page/searchPage.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="221">
|
||||
<caret line="20" column="51" selection-start-line="20" selection-start-column="51" selection-end-line="20" selection-end-column="51" />
|
||||
<state>
|
||||
<caret line="6" column="20" selection-start-line="6" selection-start-column="20" selection-end-line="6" selection-end-column="20" />
|
||||
<folding>
|
||||
<element signature="e#0#53#0" expanded="true" />
|
||||
</folding>
|
||||
|
@ -79,11 +76,11 @@
|
|||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="test_baiduSearch.py" pinned="false" current-in-tab="false">
|
||||
<file leaf-file-name="test_baiduSearch.py" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/testcase/test_baiduSearch.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-671">
|
||||
<caret line="28" column="65" lean-forward="true" selection-start-line="28" selection-start-column="65" selection-end-line="28" selection-end-column="65" />
|
||||
<state relative-caret-position="247">
|
||||
<caret line="13" column="37" lean-forward="true" selection-start-line="13" selection-start-column="37" selection-end-line="13" selection-end-column="37" />
|
||||
<folding>
|
||||
<element signature="e#15#56#0" expanded="true" />
|
||||
</folding>
|
||||
|
@ -152,12 +149,12 @@
|
|||
<option value="$PROJECT_DIR$/page/LoginPage.py" />
|
||||
<option value="$PROJECT_DIR$/common/pageObject.py" />
|
||||
<option value="$PROJECT_DIR$/testcase/test_baidu.py" />
|
||||
<option value="$PROJECT_DIR$/run.py" />
|
||||
<option value="$PROJECT_DIR$/README.md" />
|
||||
<option value="$PROJECT_DIR$/common/sendEmail.py" />
|
||||
<option value="$PROJECT_DIR$/common/url.py" />
|
||||
<option value="$PROJECT_DIR$/page/searchPage.py" />
|
||||
<option value="$PROJECT_DIR$/testcase/test_baiduSearch.py" />
|
||||
<option value="$PROJECT_DIR$/run.py" />
|
||||
<option value="$PROJECT_DIR$/common/sendEmail.py" />
|
||||
<option value="$PROJECT_DIR$/README.md" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
|
@ -187,6 +184,36 @@
|
|||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="common" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="file" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="page" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="report" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="testcase" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="Automated-Test" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="z-README-image" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="Automated-Test" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="External Libraries" type="cb654da1:ExternalLibrariesNode" />
|
||||
|
@ -498,23 +525,6 @@
|
|||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/common/pageObject.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="608">
|
||||
<caret line="32" column="11" lean-forward="true" selection-start-line="32" selection-start-column="11" selection-end-line="32" selection-end-column="11" />
|
||||
<folding>
|
||||
<element signature="e#0#61#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/common/url.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="38">
|
||||
<caret line="2" column="39" lean-forward="true" selection-start-line="2" selection-start-column="39" selection-end-line="2" selection-end-column="39" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/HTMLTestRunner.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="5700">
|
||||
|
@ -531,22 +541,22 @@
|
|||
<entry file="file://$PROJECT_DIR$/report/2019-02-26 10_49_31report.html">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/testcase/test_baiduSearch.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-671">
|
||||
<caret line="28" column="65" lean-forward="true" selection-start-line="28" selection-start-column="65" selection-end-line="28" selection-end-column="65" />
|
||||
<folding>
|
||||
<element signature="e#15#56#0" expanded="true" />
|
||||
</folding>
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="158">
|
||||
<caret line="57" lean-forward="true" selection-start-line="57" selection-end-line="57" />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/page/searchPage.py">
|
||||
<entry file="file://$PROJECT_DIR$/common/sendEmail.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="221">
|
||||
<caret line="20" column="51" selection-start-line="20" selection-start-column="51" selection-end-line="20" selection-end-column="51" />
|
||||
<state relative-caret-position="741">
|
||||
<caret line="39" column="25" selection-start-line="39" selection-start-column="25" selection-end-line="39" selection-end-column="25" />
|
||||
<folding>
|
||||
<element signature="e#0#53#0" expanded="true" />
|
||||
<element signature="e#48#57#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -561,23 +571,40 @@
|
|||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/common/sendEmail.py">
|
||||
<entry file="file://$PROJECT_DIR$/common/pageObject.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-133">
|
||||
<caret line="8" column="9" selection-start-line="8" selection-start-column="9" selection-end-line="8" selection-end-column="9" />
|
||||
<state relative-caret-position="608">
|
||||
<caret line="32" column="11" lean-forward="true" selection-start-line="32" selection-start-column="11" selection-end-line="32" selection-end-column="11" />
|
||||
<folding>
|
||||
<element signature="e#48#57#0" expanded="true" />
|
||||
<element signature="e#0#61#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="-165">
|
||||
<caret line="30" column="1" selection-start-line="30" selection-start-column="1" selection-end-line="30" selection-end-column="1" />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
<entry file="file://$PROJECT_DIR$/common/url.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="114">
|
||||
<caret line="6" column="13" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/page/searchPage.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret line="6" column="20" selection-start-line="6" selection-start-column="20" selection-end-line="6" selection-end-column="20" />
|
||||
<folding>
|
||||
<element signature="e#0#53#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/testcase/test_baiduSearch.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="247">
|
||||
<caret line="13" column="37" lean-forward="true" selection-start-line="13" selection-start-column="37" selection-end-line="13" selection-end-column="37" />
|
||||
<folding>
|
||||
<element signature="e#15#56#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# email:3381350680@qq.com password:abc123456
|
||||
# email:3381350680@qq.com password:***
|
||||
"""
|
||||
使用一个邮箱向另一个邮箱发送测试报告的html文件,这里需要对发送邮件的邮箱进行设置,获取邮箱授权码。
|
||||
username=“发送邮件的邮箱”, password=“邮箱授权码”
|
||||
|
@ -6,7 +6,8 @@ username=“发送邮件的邮箱”, password=“邮箱授权码”
|
|||
|
||||
mail_server = "发送邮箱的服务器地址"
|
||||
这里常用的有 qq邮箱——"stmp.qq.com", 163邮箱——"stmp.163.com"
|
||||
其他邮箱可自行百度
|
||||
其他邮箱服务器地址可自行百度
|
||||
|
||||
"""
|
||||
import os
|
||||
import smtplib
|
||||
|
@ -32,18 +33,18 @@ class SendEmail():
|
|||
subject = 'web自动化测试报告测试报告' + now
|
||||
# 发件人的邮箱及邮箱授权码
|
||||
username = '3381350680@qq.com'
|
||||
password = '**' # 注意这里是邮箱的授权码而不是邮箱密码
|
||||
password = '***' # 注意这里是邮箱的授权码而不是邮箱密码
|
||||
# 邮箱的内容和标题
|
||||
message = MIMEText(mail_body, 'html', 'utf8')
|
||||
message['Subject'] = Header(subject, charset='utf8')
|
||||
# 发送邮件
|
||||
# 发送邮件,使用的使smtp协议
|
||||
smtp = smtplib.SMTP()
|
||||
smtp.connect(mail_server)
|
||||
smtp.login(username, password)
|
||||
smtp.sendmail(send_addr, reciver_addr.split(','), message.as_string())
|
||||
smtp.quit()
|
||||
|
||||
# 获取最新报告的地址
|
||||
# 获取最新的测试报告地址
|
||||
def acquire_report_address(self, reports_address):
|
||||
# 测试报告文件夹中的所有文件加入到列表
|
||||
test_reports_list = os.listdir(reports_address)
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
class Url():
|
||||
"""
|
||||
存放测试网站的网址
|
||||
"""
|
||||
|
||||
|
||||
class Url():
|
||||
base_url = "https://www.baidu.com/"
|
|
@ -4,7 +4,7 @@ from common.url import *
|
|||
|
||||
class SearchPage(PageObject):
|
||||
|
||||
# 测试网址
|
||||
# 当前测试页面的测试网址url
|
||||
base_url = Url.base_url
|
||||
url = base_url+'/'
|
||||
|
||||
|
|
|
@ -23,6 +23,7 @@ class TestLogin(unittest.TestCase):
|
|||
self.page.search = self.page.search_content
|
||||
self.page.search_btn.click()
|
||||
time.sleep(2)
|
||||
# 断言
|
||||
self.assertIn(self.page.search_content_assert, self.driver.page_source)
|
||||
|
||||
# # 未使用pageObject模式时的web页面自动化测试代码
|
||||
|
@ -59,7 +60,7 @@ class TestLogin(unittest.TestCase):
|
|||
|
||||
|
||||
if __name__ == '__main__':
|
||||
# 当没有run.py是可以单独使用以下语句生成测试报告
|
||||
# 使用以下语句生成本页面的测试报告
|
||||
# now = time.strftime("%Y-%m-%d-%H-%M-%S")
|
||||
# suite = unittest.TestSuite()
|
||||
# suite.addTest(TestLogin("test_search"))
|
||||
|
|
Loading…
Reference in New Issue