版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
目錄一、引 文檔目 二、職業(yè)規(guī) 簡單的自我介紹 為什么離 加班的看 你還有什么問題要問 你的職業(yè)發(fā)展規(guī)劃和職業(yè)目 你最近測試的論壇和網(wǎng)站是什么 對于一個新的工具你有什么看 你做了3年測試收獲,你的測試心 怎么轉(zhuǎn)行的,畢業(yè)之后一直從事軟件測試 以前在哪里上班,公司地址,測試多少人,開發(fā)多少 你的期望薪資是多少 多久能入職 是怎么考慮做軟件測試呢 是否有考慮往開發(fā)方面測試 計算機專業(yè)課程有哪些 說一下上一個公司背景 超過26歲女孩子,目前有沒有打算結(jié) 三、測試理 你們原來項目的測試流程是怎么樣的 1、需求了解分析階 2、測試準備階 3、測試執(zhí)行階 如果需求不明確的話你怎么辦 有哪些需要評審,哪些人 有沒有寫過測試計劃,具體包括哪些內(nèi)容 用例包含哪些部分,哪些用例設(shè)計方法,你一般常用哪些方法 如何提交一個好的 提bug需要注意哪些問題 bug怎么管理的,bug的生命周期或者是bug的狀 提交bug包含哪些內(nèi) 界面中的亂碼可以是哪里導致的 bug的級別有哪些,級別如何判 測試中,如何判斷是前端的bug還是后端的bug呢 如何保證質(zhì) 產(chǎn)品是怎么上線的 四、項 簡單介紹下最近做過的項 拿一個你所負責的模塊,講下具體怎么測的 你在這個項目里面主要做了些什么工作 你們項目組有多少人、開發(fā)多少個、測試多少個 測試人員怎么分工的 項目的送代周期?多久一選代?一個版本你們發(fā)現(xiàn)多少 你們整個項目寫了多少用例,你負責的模塊大概寫了多少用例 最近的版本寫了多少用例 你的需求分析一般幾天,用例大概寫了多長時間?執(zhí)行了多長時間 在uat測試的時候,突然客戶臨時要大量的數(shù) 發(fā)現(xiàn)哪些映像比較深刻bug/經(jīng)典 每個階段測試開發(fā)在干嘛(比如你寫用例的時候開發(fā)在干嘛 你們公司是否敏捷開 你這個項目做了多久?你這個項目現(xiàn)在的用戶里有多少?活躍量多少 五、測試思 打電話功能怎么去測 給你一個杯子怎么測 圖像上傳功能的測試 搜索框的測 六、 Linux系統(tǒng)你是怎么用的 Linux是什么工具連接的,Linux版本是多 日志具體是怎么看 監(jiān)控資源命令用到哪 nmon工具是如何使用 七、數(shù)據(jù) 你們數(shù)據(jù)庫怎么 存儲過程是怎么編寫 常見的關(guān)系型數(shù)據(jù)庫有哪 你們用的什么數(shù)據(jù)庫連接工 左連接與右連接有什么區(qū) 索引有哪些,如何建立索引,素引的優(yōu)缺 八、抓包與網(wǎng)絡協(xié) 抓包工具怎么 如何抓取https的 如何抓取手機的 網(wǎng)絡協(xié)議了解多少 請求方式有哪些 get跟post請求的區(qū) http跟https的區(qū) 為什么要使用cookie和session:http是無狀態(tài)協(xié) cookie跟session的區(qū) post申請方式,用get會報什么錯誤 http協(xié)議提交請求頭內(nèi) 九、接口測 接口測試怎么 兩個接口有關(guān)聯(lián),jmeter具體怎么 接口測試主要目的是什么 接口測試的流 接口測試和平常的Ul測試有什么區(qū)別 給你一個新的接口,你怎么去設(shè)計用例 接口文檔主要包含哪些內(nèi)容 你們什么時候測試接 你怎么去檢查,分 什么是api接口測 什么情況下開展接口測試 依賴于第三方的接口如何測 你們接口怎么鑒權(quán)的 接口傳輸格式有哪 接口測試的工具有哪些 十、接口自動 接口自動化怎么測 為什么做接口自動化 假如公司想要做自動化,讓你去做,你會從那些方面考慮入手 你寫了多少接口自動化用 你查詢出來返回結(jié)果是密文,密文你怎么測 http如何進行代理錄制接 jmeter如何進行參數(shù)化,參數(shù)化類型包含哪 jmeter中對于json數(shù)據(jù)如何提取信 jmeter中如何跨線程組傳輸參 jmeter如何進行斷 jmeter如間在cmd命令下運 jmeter運行完成后如何去自動發(fā)送郵件 pytest如何做斷言 patent中如何去調(diào)取其他用例中返回的參數(shù) 你們做接口自動化,用例數(shù)據(jù)是怎么組織,管理的 requests中如何進行動態(tài)關(guān) 你們python接口自動化怎么去處理cookie,session的 十一、UI自動 ui自動化怎么測 什么是自動化測試 自動化測試流程是什么 自動化實現(xiàn)的比例,1-2年 自動化測試用例的來 自動化測試的優(yōu)點與缺 優(yōu) 缺 你們自動化覆蓋率有多少 自動化測試環(huán)境的搭建是怎樣的 seleniun的原理是什么 Selenium2與Selenium1的區(qū)別是什么 定位元素的8個方法是什么 元素定位,有時候定位得到,有時候定位不到,可能是什么原因,你會怎么處理 如果元素經(jīng)常變動你怎么做 自動化如何破解驗證 數(shù)據(jù)驅(qū)動有沒有了解過,具體怎么做的 隨機數(shù)如何操作 自動化中如何去操作excel表格 如何去讀取表格中一行,一列數(shù)據(jù),具體數(shù) 如何讀取表格中總的列數(shù)跟行 自動化中如何去操作數(shù)據(jù) 如何獲取數(shù)據(jù)庫返回的所有,一行,前5 數(shù)據(jù)庫返回的數(shù)據(jù)格式是什么類型的格 ui自動化你是怎么做斷言的 斷言有哪幾種(三種),常見assert斷 十二、Unittest框 你們自動化用例是怎么管理的 WebUI自動化都用到過哪些庫 Unittest框架的原理 Unittest框架有哪些組件 Unittest框架如何使用 如何生成自動化測試報告 十四、性能測 性能測試怎么測 性能測試流程是怎么樣的 你們性能觀察哪些指標,大概指標范圍是怎么樣的 這個測試的環(huán)境配置,如轉(zhuǎn)速 性能測試計劃有哪些內(nèi) 有沒有寫過性能測試報告,具體包括哪些內(nèi) 什么是內(nèi)存泄漏,什么是內(nèi)存溢出 吞吐量,吞吐 吞吐量與吞吐率跟負載有什么關(guān)系 當你服務器滿了之后,你們吞吐量和響應時間怎么變化 你們的TPS的指標是什么估算的 每人說一個項目接口,你設(shè)置多少并 你們吞吐量是多少,響應時間是多少,你設(shè)置了多少井發(fā) 做井發(fā)你們一般cpu和內(nèi)存是多少 有沒有做過穩(wěn)定性測 5000個人搶購,只能50個人能搶到,你怎么設(shè)計并發(fā)數(shù) 微信群里面發(fā)送紅包,50003000個人能搶到,你怎么設(shè)計并發(fā)數(shù)的峰值20并發(fā)40次循環(huán)怎么做 我想從200慢慢加載到300,到400怎么 需要插入500條數(shù)據(jù),你怎么插 響應超時,你是怎么定位 壓測返回數(shù)據(jù)報錯,你怎么去定位 你理解的性能調(diào)優(yōu)是什么 如果要做萬并發(fā),你怎么 如果用戶并發(fā)要慢慢加載,你怎么設(shè)置 并發(fā)用戶數(shù)跟響應時間與吞吐的關(guān) 十五、app測 app測試你具體怎么做的 Web測試與app測試區(qū)別 常用的adb的命令 adb的作用的 App兼容性測試怎么做的 App穩(wěn)定怎么做的?Monkey怎么用(App穩(wěn)定測試 App弱網(wǎng)測試怎么做的 App的性能測 對于內(nèi)存具體怎么測呢 對于CPU具體怎么測呢 對于流量具體怎么測 對于FPS具體怎么測 App交互性怎么做的 App的安裝,卸載,更新測試具體從哪些方面考慮 H5界面怎么測 你們之前是用什么手機什么版本做兼容性測試的 Android跟ios測試有什么區(qū)別 小程序怎么測 公眾號,小程序比app更火,你怎么 微信開發(fā)者工具如何使 十六、安全測 安全測試怎么測試 appscan的原理是什 十七、python編 一個變量沒有定義報什么錯 列表與元組的區(qū) python序列有哪些 Python區(qū)分大小寫嗎 如何獲取字典中的所有鍵 列表和字典有什么區(qū)別 截取字符串里面部分字符怎么做 如何遍歷列表,字典 列出5個python標準庫 字典如何刪除鍵和合并兩個字典 python實現(xiàn)列表去重的方法 python內(nèi)建數(shù)據(jù)類型有哪些 列出python中可變數(shù)據(jù)類型和不可變數(shù)據(jù)類型,并簡述原理 如何將字符串轉(zhuǎn)換為小寫 回文 二十、場景問 有沒有抓過包,為什么要抓包,具體怎么做的 大概給我講下抓包的原理 給你一個需求,你具體講下,你怎么測試 給你一個項目,你怎么展開工作,請詳細說一下,你具體怎么做 項目快上線因為開發(fā)延遲,測試時間被壓縮怎么做 二十一、測試經(jīng)理管 員工的績效考核,量化標 你組內(nèi)有一個技術(shù)比你牛逼年輕的組員不服你,你會怎么處 你的組員提交的bug開發(fā)不認同而吵起來了,你怎么處 XXXXXXX,目前從事軟件測試工作,已經(jīng)三年工作經(jīng)驗,個人性格,比1-2applnuxjmeterpythonapp如果面試沒有說話 這個是我的一個簡單自我介紹,看面試官還有什么需要了解也可以適當?shù)耐ㄟ^向你的面試官(HR)提問表現(xiàn)出來對面試官的興趣、對他們技能的1HR,)在回答您的問題之前我想了解一下貴公司的加班制度是怎樣的。HR2IT1.公司現(xiàn)在做什么項 2.公司目前做哪方面測 3.公司這邊測試人員分配比4.進入公司,我這邊大概的工作安 5,公司這么后續(xù)發(fā)展機會還有培6,有沒有培 7,面試沒有回答上的問題,再去請3-5工作中積累,查看網(wǎng)站論壇(51testing),CSDN,偏開發(fā),pythonselenium自己先去研 2,找會的去請教3,百度去找資料4,工具原始文12019231,111350os1Android131ui11,期望薪資不要說區(qū)間比如說:6-8,2,3,10%-1,2,1、個人性格合 2、前景還可 3、個人技能也匹編譯原理、算法與數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο蠓椒?、C/C++語言等。專業(yè)方向課程:計算機數(shù)據(jù)庫原理、python344251然后我們就根據(jù)自己負責的模塊用xmind(思維導圖)進行測試需求分析,分析測試點,3開發(fā)人員編寫好代碼之后,我們會把代碼包通過JelkinsSIT4-51、xmind231:(1)目的和范 (2)規(guī) (3)測試方案和方 (4)測試的準入和準(5)測試計劃(流程、時間安排、對應人員 (6)測試的環(huán)境配置和人員安 (7)交付前面介紹的等價類劃分方法和邊界值分析方法都是著重考慮輸入條件但都沒有考慮輸入條件之間的聯(lián)系,相互組合等等的情況。考慮輸入條件之間的相互組合,可能會產(chǎn)生一些新的情況,對BUG有一個清晰明了的描述 詳細描述BUG重現(xiàn)的步對于產(chǎn)生BUG的環(huán)境進行描述; 定位好BUG的等級; bugbug。bug。bugbugbugbugbugbug,不通過打回給對應開發(fā)。截止日期、嚴重程度、優(yōu)先級、bugbugBugbugbugbug。(1)數(shù)據(jù)庫中的編碼設(shè)置(2)前端頁面編碼(3)1)unurbugujsbugbug、bugbug(3)100%,多輪測試,進行探索性測試,testlink,excel,tapd)bug項目架構(gòu),B/SC/5,AppH5bug,11135ios1Android131UI關(guān)鍵還得看開發(fā),哈哈,開發(fā)的版本質(zhì)量好的話,BUGBUG1bug5180112bug,bug備注說明:uat:測試人員提供用例,uat發(fā)現(xiàn)哪些映像比較深刻bugBug,Bug,urlscript>alert(document.cookie)</script),直接搜索后有可能把當前登錄賬戶的cookie提交后直接拋出包含有INSERTINTOSQLorAPPorH5or500if500if(關(guān)系表達式)樣式導致異常。orAppBug:[經(jīng)典bug:bug]000.3,003,bug戶對應的session,導致后退完成后,用戶用戶cookie重新選擇下拉框,輸入信息全部清空,原因,修改類型,重新刷新界面,輸入數(shù)據(jù),并沒有xssxss114513?比如:一年時間,金融項目:100W2W1234234234512345612234檢查各種擴展圖像文件的上傳(JPEG、PNG、BMP反復輸入相同的數(shù)據(jù)(5{}
SEOor500orweb.configurl404or500or(如:100tail-fexception(異常)error(錯誤)。Ps-eftop(監(jiān)控程序執(zhí)行狀況)、free-m來查看系統(tǒng)資源如果服務器出現(xiàn)故障時我們也會用(servicehttpdstatus)看下服務器是否啟動,ps-ef|grephttpdapacheps-ef|grepjavajdk服務器起不來,常見的問題有端口可能被占用,用netstatan|grep8080linuxLAMPyuminstall安裝或通過LinuxLinuxxftp21Linuxcentos6.5641tail200,tail-500errorexceptionbugpsefgrep殺掉進程kill強制殺掉-9監(jiān)控資源top 磁盤df-h內(nèi)存free-12nmon_linux_14i.tar.gz1)把文件傳輸?shù)絣inuxtar-zxvfnmon_linux比如:你們的操作系統(tǒng)centos6.5 64位系統(tǒng),./nmon_x86_64_centos6文件./nmon_x86_64_sles11-s1-c350-f-m-s11-c350350-f-mnmon生成的文件名如:_090824_1306nmon,””nmonh4nmonwindows5office6xlsxsqlselect100,可以用insertinto。也可以用腳本實現(xiàn),或者存儲過程]createprocedure(ndeclareiintdefault0;whilei<=ndoInsertintovalues(1,2...)seti=i+1;endwhile;calmysql、SQLServer、Oracle、Sybase、DB2MySQLSQLServerWebOracleNavicat,數(shù)據(jù)庫版本mysql5.6,NULLNULLMySQLMySQLMySQL缺點:雖然索引大大提高了查詢速度,同時卻會降低更新表的速度,如對表進行INSERTUPDATEDELETE,因為更新表時,MySQLPRIMARYKEY,UNIQUE,INDEXINDEX,全文索引FULLTEXT45200是否包含exception,errorfiddlerCustomizeRuels...(Ctr+R)調(diào)出定義腳本編輯器找到“if(m_SimulateModem)”設(shè)置上行下行網(wǎng)速,然后把Rules->Performance->SimulateModemSpeedsF12,fiddler,Charles(青花瓷),1Tools=>Option=>DecryptHttpstraffic=>lgnoreservercertificateerrors(unsafe)2https3、還可以Fiddler(Filters):iP1、開啟FiddlerFiddlerToosOptionsConnections>Allowremotecomputersto2、重啟Fiddler,更新剛開啟的遠程配置fiddler1、fder2ipfiddlerip,fiddler888845httpshttphttpstcphttphttpshttps,httpudptcp常用:get、不常用:delete、put、head、get,postgeturl,postpostgetgetascallpost2httpscahttphttpssslhttphttps80,httpsessionsessionsessioncookiecookiesessionhttp第二次請求服務器依然不能知道當前請求是哪個用戶,cookie請求的時候,就會自動的把上次請求存儲的cookie4KB,因此使用cookie和404NotAcceptEncoding:瀏覽器能夠處理的壓縮編碼Cookie:當前頁面設(shè)置的任何CookieReferer:(jmeterJmeterhttp考慮不同參數(shù)組合,比如說,不同借款方式,還款期限,還款曰期,借款的利率等參數(shù)組合;也要測在jmeterok,(python+原來我們接口主要是用的python+requestspythonrequest首先,導入requestdatacookietoken我們會去通過動態(tài)關(guān)聯(lián)去獲取登錄的tokencookies,cookiescookies、tokenredatahtpsvery=falsecookiessessionbug,jmeter另外兩種問法:上個接口的返回值是下個接口的請求參數(shù),這種如何處理?動態(tài)關(guān)聯(lián)有沒有了解過?headbodyjsonjson去取這個數(shù)據(jù),如果是其他格式的就用邊界提取器或正則表達式去取數(shù)據(jù)cookieshttp個邊界值提取器或者也可以用正則表示式提取器去提取登錄接口的響應頭中的cookieshttpcookieshttpcookies接口提取出來的cookies,這樣就可以了如果是不同的線程組的話,那在登錄接口中還得添加一個BeanshellBeanshellSetProperty()cookieshttpcookiesProperty()函數(shù)引用登錄接口中設(shè)置的bug,通過接口可以傳入-11,2,4,bugbug,bugJmeterjmeterHPPTJmeterBUG,BUG請求方式我們主要是根據(jù)入?yún)⑶闆r,去看接口的返回值,對于返回值,我主要關(guān)注的幾個點:1.4.Bug123、專項測試:參數(shù)約束測試,業(yè)務場景測試,測試接口請求響應時間(性能44041,2,3,1線之前,我們會在預生產(chǎn)環(huán)境做一個聯(lián)調(diào)測試,把各自系統(tǒng)連在一起,做一個聯(lián)調(diào)測試沒有問題了我們就可以上線,基本就這么做的通過用戶和密碼,auth通過cookie通過signapptokentokensingnbodywebsessiontext/html:HTMLtext/xm:XMLImage/gif:gifmage/jpeg:jpgImage/ng:png以applicationapplication/xhtm+xml:XHTMLapplication/ml:XMLapplication/atomxml:AtomXMLapplication/json:JsoNapplication/pdf:pdfapplication/msword:Wordapplication/octet-stream:application/x-www-form-urlencoded:encoded:<formencType=””>encType,formkey/valuemultipart/form-data:1cookie、sessionsessionsessionID,sessionIDcookie2、tokencookie、sessionapptoken,Webcookie、sessionFiddlerSoapuijava+httpclient.jarjavajunitTestNG:java+httpclient+TestNGPython+requests pythonunittest,pytest,LoadrunnerjmeterSwagger(Python+requests+pytest原來我們接口自動化是用python+request+pytest用例excelassertexcelcookiestoken這個時候我們?nèi)フ{(diào)用申請借款的功能模塊,里面的參數(shù)我們是保存在excelexcelassertjsoncookietoken,我們先建立一個登錄的請求,提取返回的cookietokenpytesttest如果只是執(zhí)行部分用例,也可以通過pytestyagmail,pytesttest(jmeter原來我們也做了很多接口自動化,接口自動化這塊,其實原來我們也是用jmeter時候,我們也用到一些工具,httpcsvtxt,csv2200,httpcookie,2正則表達式去提取登錄接口返回cookie,httpcookiecookie,還有也要考慮原來我們項目,還有tokentoken,提取,當成申編寫完成后,我們會把腳本添加到jenkins1,我們一般把寫完的jmeter2,svnsvn3,jenkinssvn4,運行完成,我們再jenkins1.測試范 2.時間進 3.人員安 4.框架確5.環(huán)境的搭 6.準備好測試數(shù)據(jù)數(shù)據(jù)驅(qū) 7.工程的管理后期的維100MD5(base64)Web1,iplocalhost,1,ippcip函數(shù)助手隨機函數(shù),csvread正則表達式提取或者JSONExtractorJSONExtractor后置處理器-beanshell${_P(newtoken,)}或者1,applyto:是應用范圍,設(shè)定匹配的范圍Mainsampleandsub-samples:匹配范圍為當前父取樣器,及子取樣器Mainsampleonly:僅當前父取樣器Subsamplesonly:僅子取樣器MeterVariable:變量值進行匹配(1)響應文本:響應服務器返回的文本內(nèi)容,httpheader(2)http200響應信息:匹配響應信息,處理成功返回成功”或者“ok”ResponseHeader2,3,Jmeternt\fw-zhuce.jmxlresult.jtleoE:\resultreportGUI-h-nGUl-tJMeter-lxxx.jtl-rJperties-ehtml-ohtml-RXXX.XXX.XXX.XXX:5174,XXX.XXX.XXX.http:///usermanual/get-fromaddresseesuccesssubjectsuccesslimitfailuresubjectfailurelimithostsmtp.126cmlogin2、SuccessLimitFailureLimit:當成功數(shù)與失敗數(shù)為幾時進行郵件的發(fā)送(注意:此處是大1,23100%成功時則不會發(fā)送郵件4javabeanshell用assert2,global a_id=用例數(shù)據(jù)這塊,當時公司要求使用excelexcel我們在腳本中通過調(diào)用封裝好的讀取excelexcel用例直接針對excel1,如果返回的是cookies將PythonJSONJSONPython將PythonJSONJSONPythonpythoncookiesession?對于cookie,session第一種就是先獲取登錄請求的cookierequestsgetpostcookiescookiescoookies第三種就是通過創(chuàng)建一個sessionsession象來進行發(fā)請求,如果是登錄請求,它會自動保存cookiescookiessessioncookiescookies,sessionUIUPython+seleniun+unittestcssxpathid、nameclass斷言,主要是用Assertunittestunittest編寫完成以后,可以用JenkinsRF(RobotFramework)比較簡單方便上手比較快,如果公司對自動化要求不高的話可以選RFunittest原來我們自動化測試主要是用的python+selenium+pytest和jQuery斷言:主要是用assertexce首先,我們先進行自動化框架模塊的分類劃分,分成需要定位的元素page_element,公共模塊測試用例、元素操作element_action、執(zhí)行用例以及報告文件等等這些模塊。先導入selectindex,value,visible_textSelect(Select_by_value(‘’)page_elementexcelexcel也可以獲取提示申請成功text包pymysql,把數(shù)據(jù)操作,封裝到公共方法,去調(diào)用(數(shù)據(jù)庫操作步驟:1,2,3(sql),4pytest導入patent,導入yamailif_name_="_main_",pytest.main(HTML到reportyagma當后續(xù)出現(xiàn)錯誤用例,也會調(diào)用pytest--ifjs1234、各自領(lǐng)取自己負責模塊(根據(jù)功能來進行劃分,功能測試的模塊6215-30%240-12312345230%240-30-40%1、首先要安裝Python2、然后安裝編寫代碼工具3selenium(pipinstallseleniunpycharmselenium34、下載瀏覽器驅(qū)動(谷歌.火狐等),把驅(qū)動程序發(fā)到Pythonselenium3xselenium2xSelenium2.0selenium1.0seleniumRCWebDriverWebDriverAPI,封裝成一套更加面向?qū)ο蟮腟eleniumWebDriver少會有一些差異,這就直接導致了SeleniumWebDriver例如FirefoxFirefoxDriver,ChromeChromeDriverSelenium2Selenium1Selenium1.0JavascriptSeleniumServer,將WebAP調(diào)用轉(zhuǎn)化為一段段Javascript,在Selenium內(nèi)核啟動瀏覽器之后注入這段SeleniumWebJavascript度不理想,而且穩(wěn)定性大大依賴于SeleniumAPIJavascript質(zhì)量高低Selenium2.0selenium1.0seleniumRCWebDriverWebDriverAPI,封裝成一套更加面向?qū)ο蟮默F(xiàn)多少會有一些差異,這就直接導致了SeleniumWebDriver現(xiàn)例FirefoxFirefoxDriver,ChromeChromeDriver11.1381id2name3、通過classname4css5link6、通過partial_link7、通過xpath8、通過tag_name12、不過有時候,頁面加載完成,但是元素暫時還不可見,導致定位不成功這個可以選擇使用顯示等待來處理,這里需要用到WebDriverWait4iddriver.switch_to.window()ididxpathcss_select5js6、再這就是有時候會碰到某些元素的是不可見的,比如displaynonejavaScriptdisplayjs='document.querySelectorAll("select")[1].style.display="block";上driver.implicitly_wait(20)。式定位可能會好點,或者采用JQuery我們可以通過javaScript修改display#我們需要通過javaScriptdisplay1,cssjQuery1,2,3,pythonpillowOCR1excel2、封裝一個讀取excel1、像測試用例數(shù)據(jù)這塊,我們都是放在excel21.首先都要importrandomrandint(10002000),有時需要轉(zhuǎn)化成字符串類型:str(randomrandint(1000,2000))隨機字符串:"join(random.sample(‘a(chǎn)bcdefghijk’6)),有時前面固定字母了:'ldh'+".join(randomsample(‘a(chǎn)bcdefghijk’,6))xlrdAPI第一步:導包import第二步:book=xrd.open_workbook(文件路徑)3.第三步:table=book.sheet_by_nameforiinrange(1,table.nrows):return1、讀取一行數(shù)據(jù):YS.row_values(0)02、讀取一列數(shù)據(jù):YS.col_values(0)0讀取具體某個數(shù)據(jù):YS.row_values(O)[0]獲取總列數(shù):YS.ncols獲取總行數(shù):1、安裝pymysql:pipinstallpymysqlpycharm2、導入mysql:import3、連接數(shù)據(jù)庫:db_connect=pymysql.connect(host='ip4、建立游標:cursor=db_connect.cursor()5cursor.execute(sql)獲取游標中所有數(shù)據(jù):all=cursor.fetchall()獲取游標中多條數(shù)據(jù):many=cursor.Fetchmany()獲取游標中第一條所有數(shù)據(jù):one=cursor.fenchone()7、關(guān)閉游標:cursor.close()8、關(guān)閉數(shù)據(jù)庫連接獲取游標中多條數(shù)據(jù):many=cursor.fetchmany(5)獲取游標中第一條所有數(shù)據(jù):one=cursor.fenchone()首先已經(jīng)建立好了數(shù)據(jù)庫連接的函數(shù),并且return頁面跳轉(zhuǎn)是否正確如果要檢查數(shù)據(jù)庫,需要連接數(shù)據(jù)庫,查詢數(shù)據(jù),與預期結(jié)果進行對比基本都調(diào)用unittestAssertEqualtextassert'admin'inuser_text adminvaueassert'登錄'== #斷言登錄是這個按鈕的屬3.titleassert"p2p"indriver.title,"innotinAssertdriver.find_element_by_css_selector("div.user_money>a:nth-child(1)").is5.assertseleniumassert、verifywaitforAssertVerify常見的assertassertAttribute(設(shè)定的超過時間。一般跟setTimeoutUnittest所有用例都是放在test_case每個某塊一個.pyexcel所有的具體用例腳本都是依據(jù)unittestddtunittest如果要全量跑,調(diào)用unittestdefaultTestLoader.discover加載test_case.pyWebUISelenium庫 Xlrd庫主要用來實現(xiàn)對excel表格數(shù)據(jù)進行讀取的APlPymysqlDdt庫主要用來實現(xiàn)數(shù)據(jù)驅(qū)動的RehtmlUnittest 主要用來編寫用例,管理用例,執(zhí)行用例的Unittest,1.測試固件(測試用例3.測試套件4.加載器5.運行器6.testfixture(測試固件):Setup()方法/函數(shù),tearDown(Setup()方法/函數(shù)(1)seUp()中建立數(shù)據(jù)庫連接以及進行一些初要為以后的TestCasetestcase(測試用例):testtestsuite(suite,suitesuite.可以通過testrunnerTestResult(importfromseleniumimportwebdriverimportddt定義一個類繼承unittest.TestCase重寫setUp(),tearDown()setUp()webdriverdrivertearDown()testUnittest的話,需要調(diào)用我們當時用的是HtmIReportpipinstallrunner= #保存文件夾名,默認"report" Thread_count=1,#并發(fā)線程數(shù)量(無序執(zhí)行測試),默認數(shù)量1 #各線程啟動延遲,默認0sSequential_execution=False.addTests)順序執(zhí)行,#會等待一個addTestsFalse#如果用例中存在tearDownClass,tearDownClass#lang='elang='cn'#支持中文與英文,默認中文)13、Excal4json,xml2SQLsleep3、考慮Apache4、考慮服務器的硬件配置,如內(nèi)存、CPU、mentopnmom,nmom5CPU、mem、磁盤讀寫、吞吐量和每秒事務數(shù)等性能指100jmeter100,55,LinuxmmommysqlnmomCPU,mem是主要在NavicatSQL(sleep),我就用showglobalvariablelike"wait_time"命令查看了設(shè)置的休眠時間(等待時間)28800s20sSQL用showvariableslike"tables_size16m,我將空間1GCPU10%左右,nmommysqlCPUmysqlSQLmysql50CPU40%左右,并且其他的性能指標也都還不錯。最后nmom對于指標這塊,業(yè)務方面的指標主要有:并發(fā)數(shù),90%錯誤率,吞吐量/吞吐率這些,例外還需要關(guān)注服務器資源的使用情況,像:CPUIO,網(wǎng)絡。性能:5s內(nèi)存:80%I/O:%util:I/O%nowait:30%,816G100M,2.5GHZ15000pm1211,2,3,4,5,6,測試通過的標準,平均響應時間<5s,資源利用率<75%,事務失敗率內(nèi)存溢出intlongKB) 800M800*1024/12=6666612TPSPVPVPeakY,PVPVSizePV10PV,TPS10。10PV5208,TPS=5208/3600≈1.4580%20%的時間內(nèi)完成,TPS=(5208*80%)/(3600*20%)≈5.81、由TPS進行估算 方法1:由TPS進行估算TPS=事務數(shù)/時間,假設(shè)所有的事務都來自不同的用戶,那么并發(fā)數(shù)=事務數(shù)=TPS*Vu(業(yè)務名稱)=TPS(業(yè)務名稱)*(Runtime+耗的時間,包括事務時間+非事務時間。ThinkTime下面是發(fā)帖動作的測試腳本偽代碼(T、TT、AT,AT事務時間中,可以忽略).Runtime=T1+...+T7;ThinkTime=TT1+TT2。Enterloginpage)Tl=0.2ThinkTime(思考時間)TT1=3Declarelogintransaction)T2=3Commatformm(提交登錄表單)Assertlogin(檢資登錄是否成功Enterdefaultpage(進入登錄成功后的默認頁)T3=0.2SendertopicEntertopiclist(進入論壇列表Enternewpagefortopic)T5=0.2ThinkTime(思考時間)TT2=3DeclarenewTopictransaction)T6=3Commitfom(提交新帖)Assertcommit(查發(fā)帖是否成功Entertopiclist(提交新帖后進入論壇列表ThinkTime333可得Vu=TPS(RunTime+ThinkTime)=5.8*(T1+TT1+T2+T3+T4+T5+TT2+T6+T7)≈76如果只計算事務時間<3<37<3<3--2:200,200C=NLTLT182c=n*2/8n,L40028C=400*2/8TPSPVPVPV50008020%的時間內(nèi)完成,TPS=(P80%)/20%)≈5.6。算出來大概5.6。201000,則同時200,200C=NUTLT182nL40028c=400*2/820%,34536/sec<3s,50025.6/sec<3s,350cpu60%65%36001并發(fā)數(shù),按群內(nèi)最大人數(shù)計算,利用二八原則,5000*80%=4000,并發(fā)數(shù),按群內(nèi)最大人數(shù)計算,利用二八原則,5000*80%=4000,40002012JMeter500JMeter隨機函數(shù)randomString(),random()函數(shù)結(jié)合計數(shù)器來實現(xiàn)。2sql45CPU122,3,4,5,8,sqlshowfullPROCESSLIST 2sqlsq9,showGLOBALSTATUSlike"key——read%"showVARIABLESlike"key_buffer_size"#查看緩存空間大小setGLOBALkey_buffer_size=8000000 10,sleepshowGLOBALVARIABLESlike"waitshowGLOBALVARIABLESlike"interactivetimeout%"setGLOBALinteractive_timeout=30setGLOBALwait_timeout=302,2,3,4,5,2,3,4,master5050101,十五、appWeb7-8vivooppoMonkeymonkeyGTAndroidStudioappCPU,內(nèi)存,電量,流量,啟動時間,安裝,卸載時間以及頁面的響應時間。Bug->復測,回歸)等等的。區(qū)別主要在于,webB/S,AppC/Sweb因為它是通過瀏覽器來訪問的,服務器更新了,客戶端也更新。appapp還有就是,對于兼容性這塊,Web性能方面也會有所不同:Webappadbstart-serveradbkill-serveradbdevicesadb-sIDinstalladb-sIDshellpmlistpackages-3adbsIDuninstallcom.baidu.BaiduMapadbsIDpushD:\sdcard\路徑\adbsIDpull\sdcard\路徑\文件\D:\路徑adbadblogcat-d adblogcat-c adblogcat-vtime adblogcat-d*:E #需要打印級別為Eror的信息adblogcat-dadblogcat-d*:l>D:\hello555.log #打印1以上級別的所有日志信息adblogcat-d*:E|findstrcn.csdn.activity>D:/hello_error2.log adbshellpmlistpackageadbshellpmlistpackage3查看后臺運行的包名adbshellammonitoradbshelldumpsysmeminfo查看手機的電池信息adbshelldumpsysbatteryinfoadbshelltopadbadbshellscreenrecord--time-imit10/sdcard/demo.mp4(1010180adb其實是一個android7、82vivo,oppo6.0\7.0\8.05.0對于其他的機型覆蓋不到位,我們都是通過云測進行覆蓋的,云測這邊,我們公司用的testin60了智能遍歷,安裝,啟動,運行,卸載,初始化,MonkeymonkeyadblogcatAppMonkeyApp像monkeyadbshellmonkey-pcom.xy.android.junit-s種子值--throttle250--ignoreignore-timeouts-monitor-native-crashes-v-v100000>E:\monkey_log\monkey_log.txt 3、設(shè)置間隔時間4、配置一些時間比例5CRASH(崩潰),ANRException(異常)等的情況像看有不有空指針異常(NullPointException)啊,0OM我在運行monkeymonkeyint∥Short ∥ShortMsg:Native (com.koudaizhekou.tbk/com.uzmap.pkg.EntranceActivity)超時無響應Appfiddlerfiddler打開ScriptEditorm_SimulateModeSE1,CustomizeRulesstaticfunctionrandlnt(min,max){returnMath.round(Math,random()*(max-}2,CustomizeRulesif(m_SimulateModem){//Delaysendsby300msperKBuploaded.2kb/s//Delayreceivesby150msperKBdownloaded.2.5kb/sRues->Performance->勾選SimulateModem指標:cpu,內(nèi)存,電量,流量怎么測 cpu,內(nèi)存,流量androidcpu不能超過10-20% 要求在20%左右。指標:SE給到,競品分析1,cpu3androidstudiosdk件androidMonitor,cpu,內(nèi)存,流量的曲線圖2,usbapk必須需要開啟debug3oomcpu4,fpsadbbug,2appcpuappcpub,F(xiàn)psadb1000/60=16.6ms,16ms打開手機:開
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- JJF(陜) 048-2021 一體化振動變送器校準規(guī)范
- 學期課程評估與反饋機制計劃
- 行政部效率提升項目實施計劃
- 城市規(guī)劃保安工作計劃
- 心肺復蘇急救措施培訓緊急救護與護理課件
- 提高供水質(zhì)量的實施方案計劃
- 活動現(xiàn)場的保安組織與指揮計劃
- 成本優(yōu)化與價值鏈管理培訓
- 客廳裝飾畫相關(guān)行業(yè)投資方案范本
- GPS同步鐘行業(yè)相關(guān)投資計劃提議范本
- 深度千分尺校準記錄表
- 遼寧省沈陽市沈河區(qū)2023-2024學年數(shù)學四年級第一學期期末監(jiān)測試題含答案
- 連云港市農(nóng)商控股集團限公司2023年專業(yè)技術(shù)人員招聘上岸筆試歷年難、易錯點考題附帶參考答案與詳解
- 電工安全用具課件
- 北師大版四年級數(shù)學上冊《不確定性》評課稿
- 模板銷售合同模板
- 對越自衛(wèi)反擊戰(zhàn)專題培訓課件
- 人音版一年級上冊《我有一只小羊羔》課件1
- 常用急救藥品
- 內(nèi)科主治醫(yī)師講義
- 小學生簡筆畫社團活動記錄
評論
0/150
提交評論