2023备战金三银四,Python自动化软件测试面试宝典合集(四)
接上篇:
11、點擊塞錢進紅包,選擇使用新卡付款,按照流程添加新卡,此時同樣需要考慮金額>新卡余額,
金額<新卡余額,金額=新卡余額三種情況
12、使用指紋確認付款(正確的/不正確的指紋)
13、使用密碼確認付款(正確的/不正確的密碼)
14、發送成功之后,對應的途徑會減少相應的金額
15、發送者接受者可以點擊紅包查看到紅包的具體信息,且金額,留言,表情均能正確顯
16、好友點擊紅包之后,零錢中將增加相應的金額,再次點擊之后,只能查看到紅包的信息
17、24 小時之內沒有領取的紅包,將退回原賬戶,此時原賬戶的零錢將增加相應金額的金錢 24 小時
后好友點擊紅包,顯示紅包已過期,無法查看到紅包的余額
18、右上角的紅包記錄中,可以查看剛剛發出的紅包的金額
19、檢測幫助中心中鏈接是否均可以正常跳轉,查看
20、當紅包超過 24 小時之后,則無法查看紅包被每個人領取的詳細信息
2)發送群紅包(與發給好友的測試點相似,以下僅寫出不同的部分)
①選擇為拼手氣紅包時,群中每個人收到的金額隨機(但加起來為紅包的總金額),為普通紅包時,群
中每個人收到的金額相同
②紅包個數(1-100):0,1,2,大于群成員人數,小于群成員人數,等于群成員人數,99.100,101,
小數,中文、英文、特殊字符、表情或者他們的組合
③但紅包沒有被搶完時,此時首次點擊該紅包的人可以搶到一定金額的紅包,不是首次點擊該紅包的
人只能查看該紅包的信息;當紅包搶完時,所有人只能查看該紅包的信息
④在 24 小時之內紅包的金額被完全搶完,且此時為拼手氣紅包時,金額最多的人會顯示為最佳手氣
(若有兩個人取得紅包的最大值時,則只有一個人會顯示為最佳手氣);若沒有被完全搶完,則沒有最
佳手氣,且余額會退還到原賬戶
⑤群中所有人均可以搶紅包(包括自己),每個人最多只有一次搶該紅包的機會
⑥測試當紅包個數使得每個紅包分到錢小于 0.01,即總金額為 0.02,而紅包個數為 3 時的情況
2、兼容性測試
1)蘋果手機和安卓手機
2)蘋果手機的不同版本
3)安卓手機不同的機型
4)不同分辨率
3、性能測試
打開紅包的響應時間不能超過三秒,高并發場量下不能超過 5 秒
2)耗電量
3)消耗流量的多少
4)所占內存
4、ui 測試&易用性測試
1)界面的設計風格是否統
2)界面中文字是否簡潔,沒有錯別字
3)是否易操作,易學習,易理解
5、中斷測試:前后臺切換,網絡異常,低電量,斷電,來電,短信等
6、網絡測試
1)網絡兼容性:2G/3G/4G,WIFI,熱點,移動/聯通/電信
2)無網測試
弱網:延時&丟包
5.10 微信聊天功能測試用例
消息發送(單聊,群聊,語音,文字,圖片,表情,鏈接,字符及長度)
成員管理(加人,被加,退出,被動退出,編輯,刪除)
群組管理(創建群,消息設置,申請入群,掃二維碼入群,退群,通知提醒,頭像編輯,名稱編輯,
簡介編輯,權限編輯,成員編輯)
消息管理(發布通知,接收通知,發文件,消息提醒,通知提醒,聲音,震動,好友請求,請求處理)
隱私管理(黑名單,允許好友查看動態,允許陌生人查看動態,允許通過手機號查找,允許真實姓名
查找)
權限管理(開放群(任何人入群)、半開放群(驗證入群)驗證加好友不需驗證加好友)
登錄退出(忘記密碼,更換賬號)
好友管理(掃二維碼加人,加好友,查好友,好友推薦,群組推薦,聯系人導入,拉黑名單,解除好
友,備注名)
動態管理(發動態,發投票,點贊,表情,評論,增加,刪除,分享,隱藏,編輯
消息推送(在線,離線,收發,時序)
文件管理(接收,離線接收,預覽,刪除,分享,轉存,文件格式,大小)
5.11 給你一個界面怎么測
這個具體看什么界面了,首先要搞清楚界面上有哪些功能點,一定要弄清楚哪些是展示性的信息,哪
些可操作性的東西。然后從上到下根據界面上的一些功能進行逐一測試。具體的話:
1)首先肯定是做界面 ui 測試,主要檢查看界面布局是否合理,是否美觀,圖片,顏色,字體,超鏈
接,是否都顯示正確,界面數據是否展示正常等等。
2)然后根據界面上的各個功能點需求逐一檢查,各個功能是否有問題。
3)考慮到時界面,所以得考慮兼容性問題,對于 Web 端要不同的瀏覽器展示問題,瀏覽器縮放比例問
題,不同屏幕大小問題,看是否都能正常展示,對于 App 端當然要考慮不同的手機屏幕大小,分辨率
等等。
5.12 你說原來充值功能,你是怎么測試的?
一、首先我們先測試充值的主體功能,看看能否充值成功;(等價類,邊界值,判定表,流程分析法,
狀態遷移法,錯誤推測法,異常處理法來測試)
用邊界值的方法測試充值限定的額度能否充值成功
用特殊字符在充值輸入框輸入是否有提示語提醒
充值輸入框為空時點擊充值是否有提示
在輸入框里輸入金額,再后退網頁再進入充值頁面,是否還保存著輸入的金額數
多次往返充值界面,是否還可以正常充值
選擇多個充值支付方式能否充值成功
選擇各銀行網銀能否充值成功
充值成功時,有沒有相關的提示和頁面是否正確跳轉
充值成功后,相關聯的金額是否正確顯示
充值成功后,查看數據庫的相關數據是否有存在和正確
點擊第三方支付(如支付寶,微信)是否有相關的連接頁面跳轉
能否同時選擇多個支付方式來充值
交叉選擇支付方式后,再選擇其中一個支付方式能否充值成功
充值輸入框多次修改充值金額,能否充值正確
二、我們再測試充值的性能,用 jmeter 模擬大量用戶同時充值,看看能否充值成功;
三、我們再對充值的安全性進行測試,
(1)綁定銀行卡充值和未綁定銀行卡能否充值成功;
(2)綁定多張同名的銀行卡以及一個用戶綁定多張不同名的銀行了能否綁定充值成功
(3)實名認證和未實名認證能否充值成功
(4)用邊界值的方法測試每天充值限額,次數
(5)測試一天之內最多可以輸入密碼錯誤次數是多少,次數達到多少次鎖卡,是否需要到銀行解鎖方
能再進行充值
(6)輸入充值金額后需要輸入多少次密碼,是否有加密,不輸入密碼能否充值成功;
(7)使用其他的支付方式支付能否充值成功
(8)測試充值金額的類型
(9)充值之后所充值的賬戶以及平臺的余額額度是否有增加;
(10)單次點擊,多次點擊會不會充值成功;以及多次點擊會不會多次充值;
(11)同時打開多個充值界面,能否充值成功;
(12)不登陸用戶的情況下是否充值成功;
(13)不選擇銀行卡或其他方式支付是否能充值成功;
(14)跨站攻擊,數據泄密;
四、我們還要對兼容性進行測試,看看不同的版本、分辨率,不同的瀏覽器,能否正常充值
五、對易用性進行測試,測試充值的整個流程是否易用,遇到一些不懂的有沒有相應的溫馨提示
六、我們還會考慮測試異常的情況:(網絡異常和設備異常)
比如說:
(1)充值的過程中突然沒網或者網絡中斷或弱網情況下是否充值成功;
(2)充值過程中突然斷電了,能否充值成功;
(3)充值過程中設備卡頓能否充值成功;
(4)銀行卡掛失,被注銷,卡內余額不足,卡里金額被凍結,額度超過限額的情況能否充值成功
七、我們再對界面進行測試
(1)界面是否美觀,格式是否正確,中文是否有錯別字
(2)在其他瀏器能否打開我們這個充值界面,能否正常顯示并且正常充值
(3)界面上的按鈕是否符合用戶的使用習慣,主要關鍵的功能按鈕是否容易找到,操作是否便捷;
(4)在不同的瀏覽器里界面縮放后,界面排版是否正常顯示
5.13 電商的庫存邏輯怎么測。
比如客戶下訂單,庫存減少,規定時間內未支付定單就取消,庫存又加回來,
我會先測一下界面,比如界面的排版是否美觀,有沒有錯別字,顏色適不適合等。然后再測試一下功
能,提交訂單頁面,我會測試購買商品數量,自己輸入的邊界值和點擊加就加或者減少修改數量,不
選擇數量會不會有默認數量,不選擇商品類型以及選擇多個商品類型,然后測試正確提交訂單后,看
庫存是否有減少相應的數量。再測試規定時間的邊界值,比如規定時間是 1 個小時,那 1 個小時內完
成支付,庫存有沒有變化,61 分鐘還是否能去支付,訂單有沒有關閉,接著會測試一下 1 個小時內
取消訂單,單庫存有沒有增加相應的數量以及 1 小時內沒有去支付,系統自動取消訂單,庫存有沒有
加上相應的數量。再測安全性,涉及到支付,用 fiddler 工具抓包攔截數據,看能否修改參數,再發
送請求支付成功,測邏輯的話大概就這些。
六、 Linux
6.1 Linux 系統你是怎么用的?
[在測試 1、執行的過程中,我們發現的 bug,有時候需要定位 bug,協助開發修復 bug 時需要在 linux
里通過命令 tail-200 或 tail-500 查看當天的日志的后面多少行或者前面多少行定位 bug 或者通過
tail -f 來查看日志里的關鍵字 exception(異常) error(錯誤)。
[后臺程序運行久了會對系統造成卡頓等諸多隱患或我們做性能測試的時候我們都會通過 linux 的命
令 Ps -ef 顯示所有進程)、top(監控程序執行狀況)、free -m 顯示內存使用情況)
來查看系統資源如果服務器出現故障時我們也會用(service httpd status)看下服務器是否啟動,
用 ps -ef|grep httpd 查看 apache 進程是否啟動,用 ps -ef|grepjava 查看 jdk 進程是否啟動如果
服務器起不來,常見的問題有端口可能被占用,用 netstat- an|grep 8080 查看端口是否已被占用。]
[搭建測試環境的時候我們在是在 linux 下進行的,搭建 LAMP 時在線用命令 yum install
安裝 apache,php 以及 mysql;或通過 xshell 來導入需要的環境包來搭建 LTMJ(Tomcat、Mysql、jdk)
6.2 Linux 是什么工具連接的, Linux 版本是多少
Xshell、CRT、SSH 用的 ssh 協議連接,端口是 22
傳輸文件用 xftp 工具,占用的端口是 21
Linux 版本 centos6.5 版本 64 位
6.3 日志具體是怎么看的
1、我們根據日志目錄找到對應的日志文件,用 tail -200,或者 tail-500 查看文件內容
也可以重定向導出來查看。
如果是系統出現了異常導致的錯誤,我們跟去查找關鍵字,比如說 error 或者 exception 等
如果是邏輯錯誤,會把操作對應時間的日志跟對應開發一起去定位 bug
6.4 監控資源命令用到哪些
查著進程 ps -ef 過濾添加 grep 來著
殺掉進程 kill 強制殺掉 -9
監控資源 top vmstat
磁盤 df -h
內存 free -m
6.5 nmon 工具是如何使用的
1、下載安裝包()
2、安裝(不需要安裝-解壓即可) nmon_linux_14i.tar.gz
1)把文件傳輸到 linux 服務器
2)解壓 xftp
tar -zxvf nmon_linux 14i.tar.gz
3)解壓文件中,找到你系統版本對應的運行文件
比如:你們的操作系統 centos6.5 64 位系統, ./nmon_x86_64_centos6 文件
4)運行對應的監控資源的文件
./nmon_x86_64_centos6
按字母 c 查看 cpu,m 查看內存,n 查看網絡,q 退出
運行命令把數據保存到文檔中
./nmon_x86_64_sles11 -s1 -c350 -f -m /home/
-s1 每 1 秒采集一次數據
-c350 采集 350 次,即為采集十分鐘的數據。
-f 生成的數據文件名中包含文件創建的時間
-m 生成的數據文件的存放目錄
這樣就會生成一個 nmon 文件,并每十秒更新一次,直到分鐘后。
生成的文件名如:_090824_1306nmon,””是這臺主機的主機名, nmon -h 查看更多幫助信息。
4、把生成 nmon 工具,導出到 windows
5、用 office 運行分析工具
6、生成一個 xlsx 文件
6.6 測試環境是如何搭建的(弱項)
前提條件:租服務器或者買服務器-僅搭建一次,
1、搭建環境 linux+ apache+php+ mysql, linux+ tomcat+java+ mysql
2、每一次選代,每一次測試( apache)html 目錄下
1)替換代碼包(覆蓋代碼包)-配置文件已經編輯好-壓縮包
2)運行 sql 文件
3)重啟服務
tomcat(java 語言) ---代碼在 webapps 目錄下
1,替換代碼包(覆蓋代碼包)·配置文件已經編輯好-壓縮包,war 包(重啟 tomcat 服務,自動化解壓)
2,運行 SQL 文件
3,重啟服務
6.7 linux 常見命令有哪些,說出 10 條左右
查看實時日志:tall 、 head -20 查看前 20 行 、 tail -20 查看前 20 行
查看進程:ps -ef 、查看當前系統端口:netstat -an 、查看哪些端口被打開:netstat -anp
重啟數據庫服務:systemctl restart mysql service
重啟網卡:service network restart
解壓包:.zip 包 unzip 包名 .tar tar -xzf 包名
在線安裝用 yun
6.8 如何查看端口是否被占用
Netstat -anolgrep 8080
6.9 data 目錄下找到所有 txt 的文件的命令
Find /data -name “*.txt”
6.10 怎么把 lnux 服務器的文件拷貝到另外一臺 linux 服務器
scp 要拷貝的文件目標主機 ip:/目錄/
scp startup.sh 192.168.1.157: /home/
root@192.168.1.157's password:
startup.sh
七、數據庫
7.1 你們數據庫怎么用
[原來我們數據庫用的比較多的,就是數據結果檢查,測試一些數據準備,性能測試造大量數據。]
[測試執行到的結果,我們需要通過 sql 語句 select 來查找數據庫對應的表,看看數據庫信息跟我
們執行的結果是否一致,比如:生成申請借款后,我們會去數據庫里面去檢查下,數據庫中數據是否
跟申請訂單數據一致。]
[我們在測試執行時需要做一些測試數據準備,我們就用 insert into 輸入數據或(者 update set 修
改數據),我們需要到數據庫查看有沒有相關記錄保存,保存的數據跟我們輸入或者修改的記錄是否
一致;比如:原來我們一個初審功能里面有個分頁功能,測試分頁功能,需要 100 條數據,我們就通
過數據庫操作添加 100,可以用 insert into。也可以用腳本實現,或者存儲過程]
[還有在做性能測試時,模擬用戶場景時需要用到大量的數據,這時就需要我們到數據庫中制造大量
的數據出來。比如說,測試充值,需要大量用戶數據,充值表中大量數據,比如 10W 條數據,我們就
用存儲過程去造。]
7.2 存儲過程是怎么編寫的
delimiter∥
create procedure 存儲過程名(n int)
BEGIN
declare i int default 0;
while i <= n do
Insert into 表名 values(值 1,值 2...)
set i=i+1;
end while;
end∥
delimiter;
cal 存儲過程名(數據量(n));
7.3 常見的關系型數據庫有哪些
mysql、SQL Server、Oracle、Sybase、DB2 等
MySQL 是開源免費的;
SQL Server 是由微軟公司開發的關系型數據庫管理系統,一般用于 Web 上存儲數據;
Oracle 數據的大量性數據的保存的持久性;
7.4 你們用的什么數據庫連接工具
Navicat,數據庫版本 mysql 5.7,端口默認是 3306
7.5 左連接與右連接有什么區別
左連接:以左邊的表(employ)為主,顯示左邊表列的全部數據,如果右邊表沒有對應的數據,
則為 NULL
右連接:以右邊的表(student)為主,顯示右邊表列的全部數據,如果左邊表沒有對應的數據,
則為 NULL
7.6 索引有哪些,如何建立索引,素引的優缺點
MySQL 索引的建立對手 MySQL 的高效行是很重要的,索引可以大大提高 MySQL 的檢素速度
缺點:雖然索引大大提高了查詢速度,同時卻會降低更新表的速度,如對表進行 INSERT、
UPDATE 和 DELETE,因為更新表時,MySQL 不僅要保存數據,還要保存一下索引文件,建立索引會占
用磁盤空間的索引文件。
索引份分單列索引和組合索引,單列索引,即一個索引只包含單個列,一個表可以有多個單列素引,
但這不是組合素引,組合索引,即一個索引包含多個列。
主鍵索引 PRIMARY KEY,唯一索引 UNIQUE,普通素引 INDEX
組合索引 INDEX,全文索引 FULLTEXT
7.7 having 是干嘛的?
是一個條件查詢,一般是跟著分組以后,比如
select title, count(title) as t from titles group by title having t>=2;
7.8 where 與 having 的區別?
having 是在分組后對數據進行過濾
where 是在分組前對數據進行過濾
having 后面可以使用聚合函數
where 后面不可以使用聚合
7.9 查詢數據庫的前 100 行數據,你 sq 怎么寫
Select * from user limit 0,100
7.10 如何進行多表查詢
Select * from A,b where a,id=b,id
7.11 in 與 exist 的區別
1.in()適合 B 表比 A 表數據小的情況
2.exists()適合 B 表比 A 表數據大的情況
7.12 數據庫測試有沒有發現什么問題
原來我們做的一個功能,生成訂單,在數據庫中沒有添加創建時間,導致后續根據時間點,去查詢訂
單的時候,找到對應的數據
持續更新,敬請期待
總結
以上是生活随笔為你收集整理的2023备战金三银四,Python自动化软件测试面试宝典合集(四)的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: BS架构和CS架构的比对
- 下一篇: 【Unity gradle打androi
