第一個月面試題


1、冒煙測試是什么意思?
冒煙測試(稱為版本驗證測試,提交測試)是指對新版本的主要功能,基本功能進行測試,如果通過,那么冒煙測試通過,如果冒煙測試失敗,那么就把版本打回給開發進行修改,直到冒煙通過;
2、你們公司的項目流程是什么?
(1)H模型
H模型:拿到需求=編寫測試計划=編寫測試用例==用例評審==導入用例管理工具==搭建環境==開發提交代碼包(達到准入要求)==部署代碼包(代碼包發環境中)==冒煙測試通過==sit1系統集成測試(全部的用例)==發現bug提交給開發開發修改==測試輸出測試小結=開發提交第二次版本包==冒煙測試=sit2系統集成測試以此類推達到准出要求=輸出測試報告=通知uat驗收測試=驗收通過==版本封裝==上線==線上測試==上線成功
(2)jenkins打包,自動化(有bug就提交修改,拉取最新的代碼)
3、你們公司的bug分幾個級別?
致命/L1
嚴重/L2
一般/L3(比較多)
建議性/L4
 
4、你對外鍵是怎么理解的? 你會使用外鍵嗎?給一個表添加外鍵的sql語句是怎么寫的?可以口述一下嗎?
答:讓一張表記錄的數據不要太過於冗余,在數據庫中對表的關系進行解耦,盡量讓表的數據單一化。
建表時添加:
CREATE table 子表(字段1  字符長度,字段2  字符長度),
constraint  外鍵名 foreign key(子表字段名 )REFERENCES 父表(字段))engine=INNODB
表建好后添加:
alter table 表名 add constraint FK_ID foreign key(你的外鍵字段名) REFERENCES 外表表名(對應的表的主鍵字段名);
5、購物車的測試點有哪些?
(1)測試思維;
(2)
淘寶購物怎么測試
兼容性測試
(1不同系統不同型號、不同版本的手機是否可以正常使用淘寶購物
網絡測試
2.3G、4G、5GWiFi、不同運行商、各種網絡環境下,購物功能是否可以正常使用
3.網絡異常時,數據交換失敗時是否會有提醒
4.有網到無網再到有網的話井下數據是否可以正常自動恢復、正常加載
5.在App端添加商品,購物車中可正常顯示
6.在PC端用一個賬戶添加商品后,手機端app也可以正常顯示添加的商品
7.勾選商品后,會顯示已勾選商品的總價,點擊去結算后,如果未登錄,則提示需要先登錄,若已登錄,則會跳轉到結算界面
8.可以在購物車右上角點擊管理對商品進行操作(移入收藏夾或者刪除)
9.購物車添加商品的數量是否有限制
10.購物車頁面中,可以對商品的信息進行修改(碼數、顏色、數量)
11.失效的商品是否會在最下端顯示
12.店鋪優惠券的領取是否可以直接抵扣
13是否可以支持大量用戶同時下單結算
14對應購物車的商品點擊是否可以跳轉到對應的鏈接
15淘寶運行時的耗電量、消耗的流量、占用系統內存的大小、CPU大小
16付款時的密碼顯示是否保密
17不同付款方式的是否可以進行挑選(花唄支付,銀行卡支付等)
18搜索對應相關產品關鍵字,出來擁有該關鍵字的產品
19滿幾件打折的商品在購物車結算時的價格
20點擊一個產品是否可以跳轉該產品的購買詳情頁
21購物訂單的保存有效期,刪除訂單后是否可以恢復)
 
6、你們公用那種數據庫?數據庫分為哪幾種類型?舉例說下
mysql  ,  
關系型數據庫和非關系型數據庫
關系型數據庫:myslq,db2,oracle,sqlserver
非關系型數據庫:redis
7、數據庫多表查詢有幾種方法?各有什么不同?
(1)內連接
  (2)  左連接(左外連接)
(3)右連接
(4)全連接
(5)左獨有連接
(6)右獨有連接
 
1、內連接   兩表有關聯的數據就顯示,沒有關聯的數據就不顯示
2、左連接   左表整張表顯示,右表與左表相關聯的數據就顯示,不關聯的數據就以null顯示
2、右連接   右表整張表顯示,左表與右表相關聯的數據就顯示,不關聯的數據就以null顯示
 
8、上線的一個基本的硬性要求?
(1)用例100%執行通過
(2)0bug
(3)輸出測試報告
 
9、查詢user表 中的第7到22行數據,請說出具體的sql語句?
selsct * from user limit 6,16;  (6索引是表示第7 行,16是步長)
 
10、說一說你的擅長技能?
對數據庫,linux比較熟練
11、根據自己的經驗談談如何提高編寫用例的水平和質量?具體怎么做?
(1)使用多種用例設計方法對用例進行設計:比如,等價類
(2)可以先用xmind圖梳理好測試點,根據測試點編寫測試用例,保證覆蓋率
(3)按模塊,系統,命名規范,測試步驟按順序編寫
(4)關注 隱性需求用例,關聯模塊的需求用例
(5)通過用例評審來提高用例水平和質量(組內評審,交叉評審)
12、項目組的人員有哪些?有主持過用例評審會議嗎?怎么主持的?
(1)測試、開發(前后端開發),產品
 (2)有
(3)通過發送郵件通知項目組成員,開發,產品,測試;包含時間,地點;在准備好從xmid圖,需求,測試用例,在會議室中講解用例(用例內容:用例標題,前置條件,預期結果等)
 
13、你們公司是怎么提bug的? bug是通過什么進行管理的?Bug的管理流程是什么?提交的bug包含哪些信息?
(1)在禪道上提、管理BUG
(2)Bug的管理流程:測試人員測試發現BUG,然后提出BUG給,給到開發人員,開發人員接受以后進行修復,修復好以后,再給測試人員,測試再進行復測,復測OK,bug關閉。
(3)Bug包含的信息:
 1、所屬產品
2、所屬項目
3、所屬模塊
4、影響版本
5、當前指派 (開發)
6、bug類型 (代碼錯誤,設計缺陷,界面優化,配置相關,安裝部署,安全相關,性能問題,標准規范,測試腳本)
7、bug標題
8、bug嚴重程度
9、bug優先級
10、重現步驟
11、相關聯需求
================
14、冒煙測試和回歸測試有什么區別?
冒煙測試是在單元測試之后,對新版本的一個基本功能進行測試。節省時間
回歸測試是在軟件的維護階段進行測試,測試的重點也是檢測引入一個新功能之后,是否會產生新的問題。測試時間較長
區別:測試時間不同
15、Linux怎么查看8080這個端口的使用情況?
(1)netstat -ntlp |grep  8080
(2)lsof -i:8080
16、怎么把duocesi.txt這個文件打包成一個zip包?怎么把duoceshi.txt打包成一個tar.gz包?具體Linux命令是什么?
 zip   包名.zip   duoceshi.txt
tar   -zcvf       duoceshi.txt
 
 
17、怎么對需求進行分析?你們公司進行需求澄清會議有哪些人員參加?你們公司的測試環境是誰搭建的?
(1)
a、顯性需求(主流程、業務、功能)
b、隱性需求
c、特殊需求 年化收益率3.65%*10000/365=1塊 
d、關聯需求
(2)有開發、產品經理、測試參加 
(3)環境是運維搭建
18、你們公司的開發和測試人員占比是多少?
1:5或1:6
19、你們數據庫當中有多少張表?把user表中id=10的name字段的值改為多測師,怎么改?
(1)232表
(2)Update  user set  name=‘多測師’ where id=10
20、什么叫索引?索引有哪些作用?
(1)
索引:
索引是一種數據結構
一個索引是存儲的表中數據結構;
索引是咋表的字段上創建的
索引包含了一列值,這個值保存在一個數據結構中
(2)
a、我們可以將索引理解為字典的目錄,當我們查詢數據是根據索引建立起來的目錄去查詢數據
b、加快查詢速度:group  by   ,order  by
c、保證字段的唯一性
 
21、你對視圖是怎么理解的? 假如我要創建一個名字叫miao的視圖,且要在倆個字段
上列如:name和class上面應該怎么創建?
(1)視圖是一個模擬表(邏輯表)  它不在數據庫中以存儲的形式保存(本身不包含數據),視圖是在動態中生成,可對基本表的敏感信息進行保護
(2)create view miao as (select name,class from user)
 
22、怎么查看創建好的索引?談談你對索引的理解?
show index   from  表名 ;
show keys  from  表名 ;
23、白盒測試方法有哪些?白盒測試的優缺點?
(1)白盒測試的方法:語句覆蓋 路徑覆蓋 條件覆蓋 判斷覆蓋 組合覆蓋 條件組合覆蓋  
(2)
優點:
1.深入程序內部,測試粒度較細。
2.是測試用例設計方法的組成部分,也是黑盒測試方法的有力補充。
3.為自動化測試與性能測試奠定基礎
缺點:過分關注代碼本身  可能會忽略實際的需求 人力成本較高
24、一條用例包含哪些信息?
1、用例編號
2、用例標題
3、前置條件
4、用例步驟
5、預期結果
6、優先級別
25、點擊加入購物車,點擊全選購買這個過程,會聯想到多少張表?具體的表名字和里面的表字段有哪些?
買家信息表,訂單表,賣家表,商品信息表
(id,admin_name, admin_password…………………)
 
26、Mysql數據庫怎么往表中新增2個字段? 你用過的關系型數據庫有哪些?你用過的非關系型數據庫有哪些?
alter table 表名 add 字段名 字段類型(字符長度)
案例:alter  table   表名  add 字段名  int(10);
關系型數據庫: oracle、mysql、sql server
非關系型數據庫:hbase、redis、mongodb
 
27、怎么創建一個唯一索引? 怎么刪除這個索引?
(1)create  unique  index 索引名  on     表名(字段名)
(2)alter table  表名  drop    index   索引名
28、你們項目組進行數據庫連接的客戶端工具是什么?怎樣去連接的?
(1)navicat
(2)
打開Navicat軟件,點擊工具欄中的“連接”,進入連接設置界面。填寫“連接名”、“主機名或IP地址”、“端口”、安裝MySQL時設置的“用戶名”、“密碼”。然后“確定” ,在“管理區”顯示我們設置的連接數據庫,雙擊進行連接。連接成功后,顯示該連接下的所有數據庫。
 
29、你平常怎么去把控項目的進度?
(1) 編寫測試計划,按照計划執行
(2)根據測試進度,寫日報
(3)根據項目管理工具進行查看,
(4)隨機查看測試人員的工作任務
(5)輔助和解決測試工作的疑難問題
 
30、你在項目中充當的角色是什么?
項目組長,負責測試任務和進度
測試人員:分析需求,編寫用例,搭建環境,執行用例,提bug,驗證bug,輸出測試報告
===============================================
31、你用過的常用的測試方法有哪些?說一下每種測試方法的特點?你一般用哪種測試方法用的比較多一點?
 
(1)黑盒測試方法,白盒測試方式,灰盒測試方法
(2)黑盒測試:關注輸入和輸出的結果,不關注代碼內部結構
         白盒測試:關注代碼結構的測試
         灰盒測試:既關注代碼輸入和輸出的結果,也關注代碼本身的結構
   (3)黑盒測試用的比較多
32、數據庫常見的約束有哪些?
 a、非空約束 
b、唯一約束   
c、主鍵約束 
d、默認值約束
e、 自增長約束
 
33、Mysql數據庫怎么創建一個用戶dcs並給這個用戶賦予本地和對所有的庫所有的表進行所有權限操作的sql命令?
grant all privilege on . to    dcs@’%’ identified by “xxxx”
34、如何在數據庫查看這周內最早成交的成交金額最大的那個人的姓名?
select name from 表名 where 金額=(select max 金額) from 表名 where 時間 between '2022/2/2' and ‘2022/2/9’);
35、請舉例說一下兼容性測試應該注意哪些方面?
手機端:系統:Android系統、iOS系統的各個版本、塞班、黑莓、window phone等
手機型號
屏幕類型:曲面屏、全面屏、水滴屏、折疊屏等
web端:
系統:window7、window10、Mac os、Linux等
瀏覽器:IE、百度、谷歌、火狐等
36、請一分鍾內說出30個Linux命令
答:文件目錄:cd pwd ls/ll mkdir rm mv cp touch
打包壓縮:tar -cvf -xvf zip unzip zip -r:壓縮多個文件目錄
查看文件:cat more less tail head tailf=tail -f:實時查看
文件搜索:find -name -type -user 、where、whereis
用戶和組:groupdel groupadd userdel useradd passwd
權限:chmod chown chgrp
網絡和進程:ifconfig ps -ef netstat -ntlp
 
ps -ef|grep     服務名稱    查看服務名稱
tail -f    日志文件      查看實時日志
cat  查看文件全部內容
kill  -9   強制殺死進程
sh  或./     啟動文件
top查看實時日志
 lsof  -i:端口號    
mkdir   創建目錄
touch  創建文檔
cp   復制
mv   重命名或移動
scp 超復制
vim 或vi  復制
less  
more
head 
chmod  修改權限
chown  修改屬主
chgrp  修改屬組
cd
history  
useradd
passwd
ln
df
free
ifconfig
ping
ls
ll
pwd
 
37、Mysql數據中的表怎么進行備份? mysql中的數據庫怎么備份到Linux服務器上面?怎么把Windows電腦桌面的文件上傳到Linux服務器?
(1)create table   新表名 like  舊表名;
(2)mysqldump -uroot -p xxx>/ xxx.sql
(3)rz    敲回車  或者xftp工具

38、你們公司是使用什么工具進行代碼和項目的文檔管理的?請簡述一下SVN工具的工作原理?在使用SVN過程中遇到報錯怎么去解決的?
(1)git  和svn
(2)上傳====修改=======下載
VN管理代碼是在一台服務器上建立一個過程庫,用於存放項目的文檔、源碼。用戶在開發前,需要把過程庫里的項目文件下載到本地,然后開發人員在本機電腦上進行開發修改。修改完成后用svn命令進行提交到過程庫,也可以通過代碼更新獲取其他人的代碼
(3)
查看文件歷史版本,報錯:條目不可用   解決辦法:找到版本庫目錄conf目錄下的 svnserve.conf 文件,把 #anon-access = read 前面的#去掉,然后改為 anon-access = none
 
39、有一個輸入框里面可以輸入IP地址,請說一下他的測試點有哪些?
ip地址測試點:
格式:192.168.151.170
1輸出和輸入的是否一致
2輸入框標題是否正確
3對特殊字符的處理
4輸入框輸入超過限制的字符處理
5輸入框本身的大小長度
6不同的字符的輸入
7對空格的處理
8輸入框的類型
9輸入的長度
10是否允許復制黏貼
11大小寫混合情況
12關鍵字含有一個或多個空格的情況
13輸入框輸入是否加密
14輸入框是否有時長限制
15是否對字符輸入限制
16是否限制字符長短
17輸入格式
18輸入的邊界值
19輸入不同語言字符
20 輸入敏感詞
21輸入負數值
22是否可以回車建換行
23輸入后是否會有記錄
24輸入錯誤是否會有提示

 

 

 

 

40、請談一談你對存儲過程的理解?你們公司一般用存儲過程用來干嘛?
(1)存儲過程就是實現某個特定功能的sql語句的集合,編譯后的存儲過程會保存在數據庫中,通過存儲過程的名稱可以反復的調用執行。
(2)造的數據是指定在存儲中

41、在公司中因為一個bug和開發發生了爭執,開發說這是不是一個bug,你說這是一個bug,遇到這種情況你是怎么處理的?
a.測試原因
測試自我檢測,是否自己測試過程有問題或自己疏忽的問題(如頁面顯示404,自己啟動),排除測試自己原因。
b.開發原因
1、截圖頁面錯誤提示
2、查看后台報錯日志
3、查看接口,接口入參正確,返回參數錯誤就是后端問題;接口入參正確,返回參數正確,就是前端問題。
4、和開發溝通,溝通不行就現場找開發復現bug,要開發改。
5、如果確定是開發的問題,可以找相關負責測試人安排人協助修改。
c.既不是開發的原因,也不是測試原因,就是產品的原因;
開發按需求開發,測試按需求測試,但是少了一個步驟、功能,這樣就要和產品核對,確認問題,如果是產品的遺漏就要產品發送郵件通知整個項目組,增加需求或功能點,然后重新走流程。
=========================
42、編寫測試用例應該注意哪些地方?
a、需求文檔上提到的,一定要覆蓋
b、異常場景能寫多少寫多少
c、不要把bug寫成標題
d、用例標題和用例步驟要寫清楚、詳細
c、預期結果要和標題收尾呼應
 
43、Mysql數據庫的刪除有哪幾種?各有什么區別?
delete from +表名 where 條件 (刪除表內容,不會刪除表結構)
truncate +表名 (刪除表內容,不會刪除表結構)
drop table +表名 (刪除表名和表結構)
 
44、怎么查看本地Windows電腦的ip地址和Linux服務器的地址?怎么換成臨時的ip地址?
(1)windows的IP地址:cmd 輸入ipconfig
Linux的ip地址:ifconfig
(2)ifconfig  eth0  ip

 

 

45、假如你通過遠程客戶端工具連接你的數據庫服務器連接不上,你應該從哪幾個方面
去排查?
(1)數據庫的賬號和密碼是否正確
(2)數據庫是否開啟    service  mysql  start
(3) 是否授權成功並且刷新
(4)防火牆是否關閉
(5)ip地址是否正確
(6)密碼是否設置成功
 
 
46、軟鏈接和硬鏈接有什么區別?
軟鏈接和硬鏈接有什么區別
 1、硬連接指向的文件和原文件是同一個文件,文件都在同一個分區。
軟連接指向的文件和原文件不是同一個文件。
2、硬連接不能跨分區,軟連接可以。
3、新增的硬連接,連接數不變,而軟連接新增要加一。
4、硬連接的編號inode是一樣的,而軟連接編號inode是不一樣的。
5、原始文件刪除,硬鏈接是可以訪問的,而軟連接不可以訪問。因為硬鏈接是同一個分區的,原始文件刪除了,可以用指向文件訪問,軟連接則不是同一個分區,刪除原始文件就找不到原始文件所在的分區了,因此也不可以訪問。
6、硬連接存放的大小是原始文件的大小,軟連接大小是路經的大小。
7、硬連接不支持目錄,軟連接支持目錄。
8、它們的相對目錄也不一樣。
=======================================
47、Linux指令cat less more有什么相同和不同的地方?
(1)相同點:都是查看文件
(2)不同點:
cat  :查看文件所有內容
less :是按上下翻頁的形式查看文件
more :是按百分比的形式查看文件
 
48、你做過的項目當中,項目的基本輸入和輸出是什么?
項目准入:什么時候開始進行測試階段
(1)測試環境搭建完成
(2)開發完成自測報告
(3)用例編寫好,並且評審通過
 
項目准出: 什么時候完成測試
(1)0bug
(2)用例100%執行
(3)輸出測試報告
 
49、有沒有自己搭建過測試環境?怎么搭建的?
(1)有
(2)我們在搭建環境之前,會准備好,服務器,jdk,Tomcat,MySQL,代碼包
后面會配置好jdk環境變量,安裝MySQL,設置好MySQL密碼,檢查防火牆是否關閉,安裝好Tomcat,啟動Tomcat,部署代碼包。
50、Tomcat和Nginx的區別,nginx有哪些優點?
(1)區別:Tomcat是Java應用服務器:它只是一個Servlet(JSP也翻譯成Servlet)容器,可以認為是Apache的擴展,但是可以獨立於Apache運行。
Nginx是輕量級的HTTP服務器是一個高性能的HTTP和反向代理服務器,同時也是一個IMAP/POP3/SMTP代理服務器,常用做靜態資源內容服務和代理服務器,更像一個HTTP server.
                                                                                                                                                          (2) Nginx優點:負載均衡、反向代理、處理靜態文件優勢。nginx處理靜態請求的速度高於apache和tomcat。
51、日志的級別有幾種?
info:僅是一些基本的訊息說明而已;
notice:比 info 還需要被注意到的一些信息內容;
warning 或 warn:警示訊息,可能有問題,但是還不至於影響到某個
daemon 運作。daemon()一直運行的服務端程序又叫守護進程。
err 或 error :一些重大的錯誤訊息,這就要去找原因了。(錯誤,出現多的)
crit:比 error 還要嚴重的錯誤信息,crit 是臨界點 (critical) 的縮寫。
alert:警告警告,已經很有問題的等級,比 crit 還要嚴重!
emerg 或 panic:疼痛等級,意指系統已經幾乎要宕機的狀態!很嚴重的錯信息了。
52、怎么查看實時日志? 在哪個目錄下面?用的什么命令查看?如果報錯的日志太多
你是怎么去定位的?怎么去找到報錯日志的?
(1)tail -f 日志文件  ,例如:tail -f catalina.out 
(2)logs 下
(3)tail -f
(4)cat  日志文件|grep
(5)vim   編輯   / 或? 查詢  err或error
 
 
53、Tomcat的啟動命令 和Tomcat的端口號在哪里修改?
(1`)sh 或./
(2)在 tomcat中的cofig目錄下  vim   server.xml
 

 

 

54、jdbc你怎么了解的? 全稱是什么?
jdbc是java連接數據庫,全稱:  java   database   connectctivity     
55、數據庫當中怎么區分大小寫?
Lower_case_table_names=0   
 
56、你們公司的測試環境是由誰搭建的?
運維,測試經理搭建,  或者自己
 
57、搭建測試環境遇你認為要注意那些問題?
(1)服務是否啟動
(2)配置文件修改是否正確
(3)數據庫中導入項目數據
(4)兼容性問題
(5)端口占用
(6)服務多開原因
 
58、jdk是什么,有什么作用?
(1)jdk 是編譯java語言
(2)dk是Java語言的軟件開發工具包,能解釋java程序,編譯java語言,沒有jdk的話無法編譯java程序
59、你們公司的測試環境是基於什么搭建的?
lamp
lnmp
60、幫我解釋一下webapps是什么?webapps目錄下面存放的東西是什么
 (1)webapp 目錄是存放應用程序;
(2)存放的是代碼包,如文件夾,war包或jar包的形式
================================================
61、http和HTTPS是什么?各自的端口號是什么?
http是超文本傳輸協議,是互聯網上的一種網絡協議。它可以接收HTML頁面,使瀏覽器更加高效。它的端口號是80
HTTPS是以安全為目標的http通道,是http的安全版。加密傳輸協議。它的端口號是443
 
62、nginx的端口號在哪個文件里面修改?為什么訪問多有米前后台的服務器ip地址和訪問mysql數據庫的服務器ip地址是一致的?
在Nginx.conf中,可以使用vim進行修改,在第36行。因為訪問的數據庫是同一個服務器,所以導致他們的IP地址一致
路徑:/usr/local/nginx/conf

 

 

63、Tomcat的默認端口號是多少?nginx的默認端口號是什么?mysql的默認端口號是多少?假如端口號80、8080、3306被占用了怎么辦?用什么命令進行查看?怎么去結束這進程?
(1)Tomcat的默認端口號 8080 ;
(2)nginx的默認端口號80
(3)mysql的默認端口號 3306
 
(4)查看: ps –ef|grep   端口號  查出進程號
結束:kill-9  進程號
lsof -i:端口
 
64、mysql數據庫的配置文件存放在哪里?

cat /etc/my.cnf

65、什么叫動態資源?什么叫靜態資源?
動態資源:需要服務器根據用戶的操作所返回的數據,以及存儲在數據庫的數據,經過一系列邏輯計算后返回的數據。
靜態資源:存儲在本地硬盤內的數據,固定的數據,不需要計算的數據。
 
66、nginx web應用服務器有哪些優點? 你用nginx做過代理服務器嗎?nginx的動靜態分離機制和負載均衡功能可以詳細的介紹一下嗎?
(1)優點:負載均衡、反向代理、處理靜態文件優勢。nginx處理靜態請求的速度高於apache和tomca
(2)
動靜態分離機制:
服務端接收來自客戶端的請求中,既有靜態資源也有動態資源,靜態資源由 Nginx 提供服務,動態資源由 Nginx 轉發至后端。

負載均衡:Nginx服務器作為前端,Tomcat服務器作為后端,web頁面請求由Nginx服務來進行轉發。
但是不是把所有的web請求轉發,而是將靜態頁面請求Nginx服務器自己來處理,動態頁面請求,轉發給后端的Tomcat服務器來處理。
67、對nginx的正向代理和反向代理有了解過嗎?
(Nginx)正向代理需要在客戶端配置,將本來要發送的請求轉發到代理服務器
反向代理需要在服務器上配置,將本來要發送到本服務器的請求轉發到代理服務器上
 
68、你們公司的服務器一般是怎么進行配置的?
(1)運維配置
(2)根據項目實際情況 ;例如:前端工程1個服務,后端工程6個服務器  ,數據庫有3個服務器(數據庫集群)
69、假如你在前端頁面點擊一個搜索按鈕的時候,有彈框提示:系統異常,這個時候你應該怎么去定位和分析這個問題?看日志怎么去看?
(1)a、將頁面錯誤提示截圖
b、查看接口,請求查看請求參數和返回參數,  如:請求參數和返回參數都正確,頁面提示錯誤則是前端的原因;若請求參數正確,返回參數失敗則是后端原因
c、在查看服務器日志,日志報錯,和上下報文,確定具體問題:如端口占用,jabc連接失敗等
d、重現bug
 
(2)tail -f  查看實時日志
 
70、你們公司有多少張表?能說出常用的幾張表的名字嗎?和表里面的具體的一些字段的名字?
根據項目大小決定,一般幾百張,user,address,(name,phone_nub………….)
71、rpm文件怎么安裝?
rpm -ivh “文件名”.rpm;
 
72、用什么命令查看linux中系統磁盤和內存的使用情況?
df 
free
 top(cpu)
73、給你一個拍照的功能,有什么測試點?
測試點:
 
74、說一下你為什么從前兩家公司離職
(1)項目結束
(2)父母在這邊
 
75、你們公司是怎么培訓新手的?有去培訓機構學習嗎?
(1)老帶新
(2)每個月進行技術分享和學習
(3)每周進行業務培訓
沒有,通過csdn和博客園, b站學習
 
76、說說你印象最深刻的bug?
准備5個;
結合你項目:
比如:(1)滿減活動在退單,解決方法
 
77、風險評估有哪些點需要去考慮的?
項目風險:人力,硬件,頻繁變更需求,時間,需求不明確
風險評估: 黑名單, 收入證明,通信認證,資產,負債等
 
78、Linux如何查找日志最后99行?
tail -99f   日志文件
tail  -n   99    日志文件
 
79、Linux如何在當前目錄下查找text文件?
  find  -name    ./  "text"
80、常用的測試的工具有哪些?
post ,jmeter, fidder, xshell,禪道,navicat
 
81、一個student表有4個字段,student_id,class,name,age. 用sql語句查找出
class,name,age都相同的student_id
行子查詢:
select  student_id   from  student where(class,name,age)=any (select class,name,age  from student where (select  conut(id))s from student  group    class,name,age   having s> 1   )
理解:三個條件相等
select student_id from student where class=name=age;
82、你們公司是怎么用數據庫的?你在公司用數據庫來做什么?
(1)mysql數據庫 一般是使用Navicat工具 用數據庫存放數據 實現表與表之間的數據查詢
(2) a、造測試數據    b、校驗數據正確性    
83、在不用vim下怎么把/data/a.txt中的123換成456 ==》sed -i 's/123/456/g'  /data/a.txt
84、說一下借款模塊着重考慮什么?
借款人信息、借款的利率、還款方式,借款的期限,還款的時間
85、你做的金融項目,那么對於資金的數據流,后期如何跟蹤維護?
資金流:綁卡(個人賬戶)==充值(平台賬戶)==提現(個人賬戶) 
 
86、項目的階段有哪些講解一下。
單元測試
集成測試
系統測試
驗收測試
87、多表怎么進行連接?
舉例的方式:表1,表2
講解
內連接:select  *  from   表1 inner  join  表2  on  表1.關聯字段1=表2.關聯字段2 ;

左連接:以左表為主,(顯示整個左表),右表關聯的數據就顯示,不關聯的數據就以null形式顯示

格式:select  * from   表1 left  join  表2    on  表1.關聯字段=表2.關聯字 ;

右連接:以右表為主,(顯示整個右表),左表關聯的數據就顯示,不關聯的數據就以null形式顯示

格式:select  * from   表1   right  join  表2    on  表1.關聯字段=表2.關聯字 ;
 
88、DDL和DML分別是指什么? 數據庫中刪除的方式有哪幾種?分別有什么區別?
DDL :數據庫定義語言 (對表結構和表字段進行操作)
DML :數據庫操作語言 (對表數據進行操作)
delete from +表名 where 條件 (刪除表內容,不會刪除表結構)
truncate +表名 (刪除表內容,不會刪除表結構)
drop table +表名 (刪除表名和表結構)
89、打一個tar.gz包、zip包怎么打?命令是什么?
tar -zcvf XX.tar.gz xx
zip xxx.zip xxx 
 
90、Linux中查看aa.txt文件的第23到37行用什么命令?
Sed –n ’23,37p’ aa.txt
head   -n 37  aa.txt | tail -n  15  
====================================================
 
91、舉例部署項目包的過程,用到了哪些命令?
搭建環境的流程:
jdk安裝
下載好linux中的jdk包 rpm
 
rpm  -ivh      jdk包
java  -version   查看
 
===========================================================
rz  tomcat將服務器上傳到中
tar -zxvf  解壓包
cd 進入tomcat
cd  webapp 下   rm-rf  *  刪除所有的包
rz  上傳下載好的代碼
在bin目錄下
sh或./  啟動
自動解壓war包
在去修改
修改配置文件
編輯 配置文件   vim    配置文件    修數據庫ip和端口號,庫名
wq 保存退出
前后端都要配置
在bin目錄下
sh或./  啟動
====================
搭建數據庫
yum install   mysql
yum install    mysql-server
mysql- u  root  -p
create  database    庫名
rz上傳數據庫備份包
 還原數據庫包
mysql  -u root  -p   庫名>備份的數據庫名
====================
 
 
 
 
 
放一個包流程:
rz  上傳代碼包
sh或./    啟動或關閉服務
ps -ef|grep    服務名稱     查看服務是否開啟
在logs下查看日志  tail  -f     日志文件
編輯 配置文件   vim    配置文件    修數據庫ip和端口號,庫名
wq 保存退出
前后端都要配置
 
 
92、除了http協議,你還用過其他的協議嗎?http和https協議有什么區別?各自的端口號是多少?Tcp和udp協議了解嗎?
(1)https 協議
(2)https是安全傳輸協議,a、比http更安全   b、http相對速度更快
(3)http端口:80    https 端口443
93、出現bug,你會給開發定位的原因,你會寫些什么。出現最多的bug的原因是什么?
 
(1)會
(2)先看頁面錯誤提示, 在看接口入參和返回參數,在看日志 報錯,重現步驟,實際結果,預期結果
(3)代碼邏輯錯誤
 
94、平常工作你們是怎么訪問linux服務器,如果xshell連linux突然連不上,會有什么原因導致?
(1)xshell
(2)a.在虛擬機上沒有連上網
    b.未關閉防火牆
    c.ssh服務未安裝.ssh進程未開啟
   d.虛擬機IP地址發生改變,可配置靜態ip
    e.ip、賬號,密碼錯誤
 
95、你們公司做完一個項目,比較常見的文檔有哪些?
需求規格說明書(SRS) 概要設計說明書(HLD) 詳細設計說明書(LLD) 測試報告, 測試用例,bug清單,測試小結, xmind圖測試點 ,測試計划
 
96、數據庫你在工作當中是怎么使用的?
增刪改查 
delete、update、 select、 insert into
 
查詢數據   校驗數據的正確性,保持一致
造數據    insert  into
修改數據     前后端數據的一致性
刪除數據    清除數據
 
 
97、我看你有帶領團隊完成測試工作,制定個人績效考核,講一下你們測試的kpi績效考核怎么做的?
kpi:是指績效考核,又稱“關鍵業績指標考核
效益指標
運營指標
組織指標
軟件中:考勤,完成工作任務量,完成工作的質量,bug數、工時、特殊貢獻、給定范圍評定: 優秀,合格,不合格
 
98、電商平台秒殺活動專區怎么測試?
==================================================
99、app測試有哪些着重的測試點?
 
1-1、App功能測試:
1. 功能測試:
安裝、卸載測試:正常安裝卸載后app的所有功能是否都正常
升級測試:升級之后app的數據是否丟失
業務邏輯測試:分解需求使用xmind思維導圖工具梳理測試點編寫用例用例評
審后執行測試
UI測試:界面布局是否混亂 界面內容是否顯示正確、清晰
異常測試:斷網 弱網 網絡切換 來電話 來短信 電量不足等提示
1-2、適配測試:
2. 適配測試:
適配測試:在不同的硬件設備上app能否正常運行的測試
不同的平台:MTK(聯發科(芯片產商))/高通(芯片與cpu產商)/展訊(國內芯片)
不同的組件:屏幕、接口、聽筒
不同的可選項:cpu、內存、存儲多 培 養 一 些 優 秀 的 測 試 工 程 師
1-3、App兼容性測試:
1. 兼容性測試:
兼容性測試:不同軟件環境的App能否正常運行的測試
不同的操作系統:android ios以及系統版本
不同的手機品牌:小米 華為 蘋果 oppo vivo 三星等以及型號
不同手機尺寸:4.8 5.1 5.5 6.1
不同屏幕的分辨率:1080*1920 1080*2340 1080*2400(寬1080個像素點*
長2400個像素點)越高表示屏幕的像素點越多 圖案就更清晰
不同網絡:2G 3G 4G 5G wifi
1-4、App專項測試:
1. 專項測試:
專項測試:因為app的終端是手機,嚴格來說屬於手機的測試范疇
耗電測試:正向耗電測試(直接測試耗電量) 逆向耗電測試(系統資源占用情況)
后台耗電測試(后台運行耗電量)
流量測試:流量占用 后台流量
內存泄漏測試:內存占用 內存泄漏 內存不足
網絡專項測試:弱網
藍牙專項測試:藍牙連接
T卡專項測試:2g 4g 8g 16g 32g手機存儲卡
SIM卡專項測試:中國移動SIM卡 中國電信SIM卡 中國聯調SIM卡
PS:指出響應報文協議及版本,狀態碼,響應頭,響應體多 培 養 一 些 優 秀 的 測 試 工 程 師
1-5、App穩定性測試:
1. App穩定性測試:
穩定性測試:軟件長時間持續運行,系統版本是否穩定,是否能持續的為用戶
提供服務
2. 穩定性指標:
異常次數
異常頻率
3. App穩定性測試實戰:
Monkey工具
Monkey是向系統發送隨機的用戶事件流(如按鍵輸入,觸摸屏輸入和手勢輸
入等),實現對正在開發的應用程序進行穩定性測試。可以更好的模擬用戶操作,確
保App的穩定性
==================================================
100、你們公司轉測試有什么要求?(轉測,提測,准出)
(1)用例寫好,用例評審通過  ,測試計划寫好, 測試環境搭建
===================
101、支付功能有哪些測試點?隨口說出10個以上?
1、最小值0.01
2、支付金額錯誤時,比如格式或數字錯誤
3、超大金額是否有限制
4、余額小於實際支付金額時
5、是否支持指紋支付,不支持時,是否給出提示
6、是否有免密支付
7、賬號+密碼支付
8、銀行卡+密碼支付
9、是否支持動態獲取支付驗證碼支付
10、信用卡支付
11、支付時斷網時,處理機制
12、支付失敗時,如何補單/退單
13、余額不足時,是否可以繼續充值支付
14、持續點擊,是否會多次扣款
15、出現多次扣款,如何返
====================================
 
103、數據庫聯調在項目怎么做的?
聯調測試: 系統與系統之間,模塊與模塊之間數據和控制流是否按照設計實現功能,聯調測試是一種灰盒測試
 
104、假如客戶在你們平台購買了一個標的過程,涉及到了數據庫中哪些表,表里面有哪些字段?

 

 

105、怎么查表里是否新增了數據?
 select  * from  table xx where xx.data_field between to_d
ate('2015/05/01','yyyy/mm/dd' ) and  to_date('2015/07/31','yyyy/mm/dd' )
106
106、風險評估你要去考慮哪些點?
項目風險:人力 硬件 頻繁變更需求 時間 需求不明確
金融風險:征信,資產,負債,通信
107、怎么查詢根目錄下test文件中的dcs字符?
cat test|grep “dcs”
108、你在公司有做過分享嗎?你們多久一次分享會?
有,一個月分享一次或一個季度分享
109、你們項目的開發框架是什么?前端的開發語言是什么?后端的開發語言是什么?你們公司用到了哪些數據庫?
(1)sprint 框架
(2)html,xml
(3)python   java   c或c++      shell    php
(4)mysql
 
110、測試計划中會有時間安排,那么你們延期一般會發生在哪些方面?
(1)需求頻繁變更
(2)開發效率低,質量差
(3)人力安排不夠
(4)工作協調不夠,及時跟進
111、有了解過小程序嗎?你是怎么測試小程序的?
(1)有
(2)測試小程序和web測試是差不多的,就是測試的入口不一樣,測試通過掃碼跳轉到程序界面,調試成體驗版(或開發版),在進行測試,如果有bug就提交開發,開發修改后就生成新的二維碼,在進行測試;
測試:測試功能,測試兼容性,測試接口,測試安全等

(1 小程序類型

程序分為三種版本類型:開發版,體驗版,正式版。開發版和體驗版無需審核,需要給微信號配置權限,通過掃小程序的二維碼才能訪問。正式版需要通過微信審核流程,也就是說,在開發階段,產品還未成型開始,無論你想怎么折騰,微信都有辦法知道。這可不像你在網上找了個框架或是工具,在本地怎么玩都沒人知道。微信小程序開發者工具使用之前就要掃碼的。開發版和體驗版的區別,在於開發版小程序的二維碼有效期比較短。項目中,我們一般會准備三套環境。開發版訪問測試環境,體驗版訪問預發布環境,正式版訪問生產環境。

 

2 真機上的調試模式

微信小程序在真機上給開發者提供了調試模式,在真機上打開微信小程序之后,可以看到右上角的三個點,打開之后我們能看到有打開調試的字眼,直接選擇打開即可,這里有一個重啟小程序的過程,再次掃一掃二維碼進入就可以看到調試了。

3 小程序碼的兼容性問題

目前小程序不支持直接分享朋友圈,只能分享微信好友。所以很多小程序都采取了“曲線救國”的方式,通過生成帶有小程序碼的圖片,用戶可以退出小程序將圖片發布到朋友圈。既然把小程序碼作為圖片的一部分,就涉及到小程序碼的位置,尺寸,還得不影響原有圖片的美觀,生成的小程序碼還需要是可識別的。這需要前端工程師費功夫做不同屏幕尺寸的適配。

基礎庫與客戶端之間的關系。小程序的能力需要微信客戶端來支撐,每一個基礎庫都只能在對應的客戶端版本上運行,高版本的基礎庫無法兼容低版本的微信客戶端。基礎庫更新時機。為了避免新版本的基礎庫給線上小程序帶來未知的影響,微信客戶端都是攜帶 上一個穩定版的基礎庫發布的。在新版本客戶端發布后,再通過后台灰度新版本基礎庫,灰度時長一般為 12 小時,在灰度結束后,用戶設備上才會有新版本的基礎庫。因此在不同版本的微信上進行測試,也是有必要的。

4頁面回退(頁面路徑最多只能十層)

在這個保留當前頁面,跳轉到應用內的某個頁面,使用wx.navigateBack可以返回到原頁面。在官方文檔中,有提示注意:目前頁面路徑最多只能十層。如果開發在這里處理不當,有可能出現超過十層回退,則會導致白屏,無法操作,導致必須重新打開小程序才能正常工作。

 

優勢:

(1)同H5相似,依賴於微信,即點即用,用戶使用成本低;

(2)主要樣式代碼都封裝在微信小程序里,打開速度比H5快,慢於原生;

可以調用更多的手機硬件功能例如,GPS,錄音等;

(3)開發,維護成本較低。

劣勢:

(1)由於受到微信限制,微信小程序只有2M的大小,無法開發大型小程序;

(2)小程序技術框架還不穩定,開發方法常有更新,微信小程序團隊也在開發過程中,導致短時間內經常要升級維護;

(3)不能跳轉外鏈網址,所以間接影響了小程序的開放性,可能是想限制其他支付方式活功能接入;

(4)暫時不能直接分享到其他平台,少了一個重要的推廣方式;

(5)需要像APP一樣審核上架,這點比H5即做即發布要麻煩;

(6)小程序沒有push功能無法推送消息,並且沒有獨立的用戶體系,用完即走。)

 

112、你覺得如何寫一條高質量的測試用例?
(1)使用測試用例方法編寫測試用例如:等價類,邊界值
(2)測試標題明確,簡單,易懂
(3)測試步驟有條理
(4)預期結果和標題相呼應
(5)關注隱性需求
(6)設置用例的優先級
(7)前提步驟明確
(8)熟悉項目業務流程
113、你最近看的一本書是什么?
《大話jmeter》  《軟件測試指南》 《軟件測試藝術》《測試工程師全棧技術》
114、你一般平時周末都怎么安排,在工作中碰到很難的問題你一般是怎么解決的? 你平時用的多的技術論壇都有哪些?
(1)看書,寫反思,聚會,運動
(2)遇到問題,
a. 先自己排除具體原因, 根據具體的報錯找出問題
b.嘗試解決問題,通過已有的技能或查詢資料,技術論壇等
c、尋求幫助,同事或負責人,請教相關專業人士,如:找運維,找開發
d、總結
(3)csdn ,博客園,簡書,
115、你們開發轉測試需要多久?
根據項目來計算,一般1-3月   ,比如敏捷開發1周開始,一周測試
116、app測試需要測試哪些地方?==》
(1)功能測試
(2)適配性測試
(3)穩定性測試
 
(4)兼容性測試:不同軟件環境的App能否正常運行的測試
不同的操作系統:android ios以及系統版本
不同的手機品牌:小米 華為 蘋果 oppo vivo 三星等以及型號
不同手機尺寸:4.8 5.1 5.5 6.1
不同屏幕的分辨率:1080*1920 1080*2340 1080*2400(寬1080個像素點*
長2400個像素點)越高表示屏幕的像素點越多 圖案就更清晰
不同網絡:2G 3G 4G 5G wifi
(5)專項性測試
專項測試:因為app的終端是手機,嚴格來說屬於手機的測試范疇
耗電測試:正向耗電測試(直接測試耗電量) 逆向耗電測試(系統資源占用情況)
后台耗電測試(后台運行耗電量)
流量測試:流量占用 后台流量
內存泄漏測試:內存占用 內存泄漏 內存不足
網絡專項測試:弱網
藍牙專項測試:藍牙連接
T卡專項測試:2g 4g 8g 16g 32g手機存儲卡
SIM卡專項測試:中國移動SIM卡 中國電信SIM卡 中國聯調SIM卡y
第1個要考慮是否為前端代碼有問題用錯標簽
第2個接口是否調用錯誤 (接口請參數正確,返回無,后端代碼問題;請求的正確,返回也正確,那就是前端的問題)
第3個后台是否在部署 
第4個數據庫有數據是否正確(數據庫對應的是否正確)
如果是數據問題則着重考試后台的問題、如果是頁面報錯提示的則着重考慮是否為前端問題
121、第三方支付的測試點有哪些?
 
1.支付安全 2.正常支付流程3.支付過程 退出4.不同狀態的訂單支付 5.支付成功后提示
122、如果以后你做管理層,你怎么去管理,你又會如何去做?
a最好具備較強的測試技術水平 
 b勇於承擔責任,把功勞推給測試團隊.事事為先、嚴格要求 自己,處處起到表率作用  
 c在公司條件允許的條件下,多給團隊成員爭取福利 
 d知人善用,用人之長,合理分工:
123、授信額度怎么來的,依據什么划分等級的?
客戶信息通過公司風控系統匹配授信額度,客戶信息發送到銀行,通過征信報告,銀行流水划分等級
 
124、你們公司的資金模式是怎么樣的?(公司下款和以公司擔保第三方銀行下款)
 銀行托管資金

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM