網(wǎng)站建設(shè)公司排名搜索大全
前言
說(shuō)實(shí)話,在找項(xiàng)目的過(guò)程中,我下載過(guò)(甚至付費(fèi)下載過(guò))N多個(gè)項(xiàng)目、聯(lián)系過(guò)很多項(xiàng)目的作者,但是絕大部分項(xiàng)目,在我看來(lái),并不適合你拿來(lái)練習(xí),它們或多或少都存在著“問(wèn)題”,比如:
1.大部分項(xiàng)目是web項(xiàng)目,很難找到app項(xiàng)目,特別是有app安裝包的項(xiàng)目大部分
2.app項(xiàng)目只有前端代碼,沒(méi)有后端服務(wù)代碼,你只能以“使用者”的角色練習(xí)
3.大部分有app安裝包的項(xiàng)目,項(xiàng)目作者提供的是試用app,很難保障個(gè)人隱私、賬號(hào)安全等
4.大部分項(xiàng)目缺少部署指南,看起來(lái)一頭霧水
5.有的項(xiàng)目涉及的業(yè)務(wù),如果你缺少業(yè)務(wù)基礎(chǔ),很難上手,如支付、區(qū)塊鏈、貨幣等
6.很少有統(tǒng)一的、能涵蓋多端使用的項(xiàng)目
這些問(wèn)題,我相信在你的學(xué)習(xí)過(guò)程中,也遇到過(guò),并且很難解決。
但請(qǐng)放心,我都幫你解決好了!
在我瀏覽了上百個(gè)項(xiàng)目,親手搭建了十多個(gè)項(xiàng)目之后,終于為讀者粉絲們挑選出非常適合練手的一個(gè)軟件測(cè)試項(xiàng)目,可以說(shuō)非常之全面。
有了它,你就再也不用擔(dān)心這類招聘了~
一、項(xiàng)目介紹
涉及技術(shù)
前端: HTML CSS JS/JQ(Bootstrap、node.js、angluar.js 等可以了解下) AJAX
PHP: PHP+MySQL session 和 cookie Nosql(redis memcache mongdb) 接口技術(shù) 緩存技術(shù) 優(yōu)化技術(shù)等等
服務(wù)器方面: Linux Nginx
開發(fā)環(huán)境: WAMP 或者是 LAMP 比較常見,除此以外還有 LNMP 等
簡(jiǎn)歷中或者是面試中盡量不要提及版本號(hào),如果要寫則需要把版本號(hào)對(duì)齊,否則不要寫版本號(hào)
電商項(xiàng)目里的技術(shù)特點(diǎn)?
1.技術(shù)更新較快:根據(jù)市場(chǎng)的需求,不斷迭代更新;
2.技術(shù)涉及面廣:除了 PHP,還會(huì)用到 Python,GO 等其他的一些語(yǔ)言;數(shù)據(jù)庫(kù)中 MySQL,nosql 是最頻繁使用的(當(dāng)然也有的公司會(huì)用 oracle,但是 PHP 一般都是以 MySQL 為主),服務(wù)器端使用 Linux(少部分公司會(huì)用到 Unix),還經(jīng)常涉及到服務(wù)器安全、系統(tǒng)安全等安全方面的技術(shù);
3.分布式:從前的單一的機(jī)器上運(yùn)行,現(xiàn)在是分散到不同機(jī)器上,最后將數(shù)據(jù)集中匯總。集中式向分布式進(jìn)行發(fā)展是由需求來(lái)推動(dòng);
4.高并發(fā)、集群(高可用集群)、負(fù)載均衡:由并發(fā)問(wèn)題采用集群進(jìn)行處理,其中,集群會(huì)涉及服務(wù)器的主從以及分布問(wèn)題,使用負(fù)載均衡。(權(quán)重高低)高可用是對(duì)用戶而言,用戶的服務(wù)不中斷(系統(tǒng)升級(jí),服務(wù)不中斷,公司電商系統(tǒng)的部分更新等);
5.海量數(shù)據(jù):每年商家的各類活動(dòng)(雙 11,雙 12 等等)訂單量、瀏覽數(shù)、商品量、活動(dòng)相關(guān)數(shù)據(jù)都將會(huì)超級(jí)大超級(jí)多(一般隨同高并發(fā)出現(xiàn));
6.業(yè)務(wù)復(fù)雜:電商業(yè)務(wù)并不簡(jiǎn)單:并不是商品展示出來(lái)后,簡(jiǎn)單的加入購(gòu)物車后購(gòu)買就完成了。除此以外后臺(tái)業(yè)務(wù)邏輯是相當(dāng)復(fù)雜,比如優(yōu)惠(包郵、滿減),秒殺,搶購(gòu)等;
7.系統(tǒng)安全:系統(tǒng)上線必須通過(guò)系統(tǒng)安全部門審核通過(guò),安全性問(wèn)題正逐步的被放到臺(tái)面上,而且很多企業(yè)對(duì)這塊相當(dāng)重視。
系統(tǒng)功能
本商城系統(tǒng)是一個(gè)綜合性的 B2C 平臺(tái),類似京東商城、天貓商城
用戶
1.用戶可以通過(guò)注冊(cè)成為商城的會(huì)員,登錄商城
2.根據(jù)會(huì)員等級(jí)獲得相應(yīng)的優(yōu)惠和特權(quán)
3.用戶可以瀏覽商品,可以根據(jù)商品類型進(jìn)行搜索
4.用戶可以對(duì)購(gòu)物車進(jìn)行操作(增刪改查商品的數(shù)量、商品詳情等)
5.用戶下訂單、退訂單,對(duì)訂單的結(jié)算等
商家
1.商家可以入駐商城,在商城里開店售賣自己的商品
2.商家也有商家等級(jí),如果在商城好評(píng)和商品銷售量到達(dá)一定數(shù)量,可獲得商家的一些特權(quán)
3.商家可以管理自己店鋪的商品:上架下架商品;設(shè)定庫(kù)存量;設(shè)定自己店鋪的會(huì)員制度等
電商項(xiàng)目的思維導(dǎo)圖
以上是大部分常用模塊,如有其它模塊自行補(bǔ)充。根據(jù)上圖的體系架構(gòu),一層層的進(jìn)行歸納記憶,從項(xiàng)目——模塊——功能一點(diǎn)點(diǎn)的往深入熟悉記憶,并且加以理解。
項(xiàng)目團(tuán)隊(duì)構(gòu)成
產(chǎn)品經(jīng)理:1 人,確定需求以及給出產(chǎn)品原型圖。
項(xiàng)目經(jīng)理:1 人,項(xiàng)目管理。
UI 設(shè)計(jì) :1 人, 制作項(xiàng)目原型效果圖。
前端團(tuán)隊(duì):1 人,根據(jù)產(chǎn)品經(jīng)理給出的原型制作靜態(tài)頁(yè)面。
后端團(tuán)隊(duì):3 人,實(shí)現(xiàn)產(chǎn)品功能。
運(yùn)維 :1 人 ,負(fù)責(zé)公司運(yùn)維項(xiàng)目的系統(tǒng)。
測(cè)試團(tuán)隊(duì):2 人,測(cè)試所有的功能。(小公司不會(huì)有測(cè)試)
上述是以團(tuán)隊(duì)為單位,有的公司技術(shù)部不止一個(gè)團(tuán)隊(duì),還有運(yùn)維、UI、交互設(shè)計(jì)師等等,視情況而定
項(xiàng)目開發(fā)流程
二、電商面試常見問(wèn)題
1.說(shuō)說(shuō)你最近做的這個(gè)項(xiàng)目的背景,簡(jiǎn)單的介紹一下你這個(gè)項(xiàng)目?(這個(gè)題至少要說(shuō)清這個(gè)項(xiàng)目給什么類型公司或者什么行業(yè)做的,然后再來(lái)介紹這個(gè)項(xiàng)目的基本功能模塊就可以.)你負(fù)責(zé)的模塊是什么? 你負(fù)責(zé)的模塊都有什么功能?
我們公司之前主要以實(shí)體店為主,進(jìn)行批發(fā)與零售,業(yè)務(wù)也相對(duì)比較傳統(tǒng)。為了適應(yīng)市場(chǎng)需求,增強(qiáng)公司競(jìng)爭(zhēng)力,提升業(yè)務(wù)績(jī)效,另一方面,也為基于互聯(lián)網(wǎng)的商務(wù)模式創(chuàng)新奠定基礎(chǔ)。所以開始 xxx 商城建設(shè)項(xiàng)目,其中包含商品管理、訂單管理、類目管理、客戶管理、合作商管理、客服管理、購(gòu)物平臺(tái)、內(nèi)容管理等,很大程度上分擔(dān)了人工的壓力,對(duì)提高客戶服務(wù)效率和客戶滿意度能夠起到較好的作用。(先大體的描述下項(xiàng)目,然后能夠挑一兩個(gè)自己最為熟悉的模塊進(jìn)行敘述)
2.項(xiàng)目的整體結(jié)構(gòu)(從框架和具體技術(shù)來(lái)說(shuō))
框架方面:從大處進(jìn)行描述,比如本項(xiàng)目是屬于電商項(xiàng)目,采用的是 TP 框架,運(yùn)用php+MySQL+Apache 進(jìn)行開發(fā)。因?yàn)?TP 框架是開源的、輕量級(jí)的,所以用起來(lái)更加方便快捷,從效率和成本方面來(lái)講都是性價(jià)比比較高的,所以那時(shí)候團(tuán)隊(duì)決定用這個(gè)框架進(jìn)行開發(fā)。然后再?gòu)目蚣艿囊恍﹥?yōu)點(diǎn)特性進(jìn)行說(shuō)明下,讓面試官覺(jué)得你對(duì)這個(gè)框架很了解技術(shù):描述技術(shù)時(shí)首先用從自己比較熟悉的模塊入手(比如說(shuō)注冊(cè)驗(yàn)證時(shí)會(huì)用到的 JS 技術(shù)、正則匹配、ajax 無(wú)刷新驗(yàn)證等等),然后由此慢慢的向其他方面的技術(shù)進(jìn)行拓展,在說(shuō)具體技術(shù)的時(shí)候如果能說(shuō)到目前比較新或者是比較有難度的技術(shù),能夠讓面 試官眼前一亮,這樣能為自己的面試增加不少分。
3.你這個(gè)項(xiàng)目有多少人做? 開發(fā)多少?測(cè)試多少? 什么架構(gòu)?
20個(gè)左右,開發(fā)10個(gè),測(cè)試3個(gè),ui測(cè)試2個(gè) 運(yùn)維2個(gè) B/S架構(gòu)和app
4.B/S架構(gòu)的系統(tǒng)從哪些點(diǎn)去測(cè)?
功能:鏈接測(cè)試、導(dǎo)航菜單、頁(yè)面的跳轉(zhuǎn)、表單測(cè)試、數(shù)據(jù)測(cè)試、業(yè)務(wù)邏輯測(cè)試
兼容性:跟客戶確認(rèn)其常會(huì)用的瀏覽器,再加上IE、火狐和谷歌等進(jìn)行兼容性的測(cè)試
界面:字體顏色大小、圖標(biāo)和字段間距等
性能:連接速度、負(fù)載測(cè)試、壓力測(cè)試
安全性:權(quán)限控制、鏈接封裝、日志記錄的測(cè)試、登陸密文、修改密碼后重新登陸、登陸失效時(shí)間。
5.分布式架構(gòu),對(duì)比傳統(tǒng)架構(gòu)的優(yōu)勢(shì)。
①最為明顯的一點(diǎn),在傳統(tǒng)的架構(gòu)中,如果某個(gè)功能需要進(jìn)行維護(hù),那么我們必須停掉整個(gè)服務(wù),這對(duì)于公司的運(yùn)營(yíng)會(huì)造成損失。分布式系統(tǒng)在核心功能模塊使用單獨(dú)服務(wù)器,維護(hù)部分模塊不影響用戶的其他操作。
②在海量數(shù)據(jù)處理方面,傳統(tǒng)架構(gòu)顯得比較乏力;分布式系統(tǒng)架構(gòu)采用服務(wù)器集群,使用負(fù)載均衡,海量數(shù)據(jù)處理游刃有余!
③在性能(檢索)以及維護(hù)方面,分布式系統(tǒng)架構(gòu)也有較為明顯的優(yōu)勢(shì)。
6.項(xiàng)目分了多少模塊,你負(fù)責(zé)的是哪些模塊,這些模塊你用了什么測(cè)試技術(shù)
在項(xiàng)目中主要負(fù)責(zé)相關(guān)功能的開發(fā),主要有:
后臺(tái)管理系統(tǒng):主要實(shí)現(xiàn)商品管理、商品規(guī)格參數(shù)管理、訂單管理、會(huì)員管理等、CMS(內(nèi)容管理系統(tǒng))等,并且提供了跨域支持;
前臺(tái)系統(tǒng):主要是面向用戶訪問(wèn),使用 js、ajax 進(jìn)行前后臺(tái)數(shù)據(jù)交互(一般是用 json 格式數(shù)據(jù)返回)
會(huì)員登錄:提供和用戶信息相關(guān)的接口,比如說(shuō)用戶注冊(cè)、查詢等接口(登錄時(shí)需要進(jìn)行多重驗(yàn)證,特別注意安全方面)
訂單功能:主要是提供和訂單相關(guān)的業(yè)務(wù)接口,在訂單系統(tǒng)了做了嚴(yán)格的數(shù)據(jù)校驗(yàn)以及高并發(fā)寫的支持(這里可以說(shuō)使用隊(duì)列實(shí)現(xiàn)),并且使用了定時(shí)器實(shí)現(xiàn)對(duì)下單的時(shí)間控制,比如說(shuō)關(guān)閉超時(shí)未付款的訂單;
搜索功能:主要是提供商品的搜索,可以采用 Sphinx 全文搜索,當(dāng)然也有其他的搜索方式;
會(huì)員系統(tǒng):主要是維護(hù)用戶的信息,已購(gòu)買訂單、優(yōu)惠券、系統(tǒng)消息、修改密碼、綁定手機(jī)等功能;
緩存:主要是用 Redis 實(shí)現(xiàn),并且對(duì) Redis 做了集群來(lái)保證 Redis 服務(wù)的高可用(緩存方面除了 redis 外還有 memcached)
支付系統(tǒng):主要是負(fù)責(zé)訂單的支付、對(duì)賬等功能,主要是對(duì)接了支付寶的接口;
根據(jù)個(gè)人的實(shí)際情況選擇最為熟悉的模塊,進(jìn)行敘述
7.你的項(xiàng)目上寫了用了什么測(cè)試技術(shù),面試官會(huì)展開的問(wèn)你這個(gè)技術(shù)
8.這個(gè)項(xiàng)目一共寫了多少測(cè)試用例,執(zhí)行了多少時(shí)間,發(fā)現(xiàn)了多少個(gè)bug
- 這個(gè)項(xiàng)目你印象最深的bug是什么,后面怎么解決的
10.項(xiàng)目上線了嗎?如果上線了在哪里可以看到,如果沒(méi)有上線,為什么
11.你對(duì)項(xiàng)目的某某模塊是怎么設(shè)計(jì)測(cè)試用例的,為什么這么設(shè)計(jì)
12.這個(gè)項(xiàng)目的數(shù)據(jù)庫(kù)用的是什么,設(shè)計(jì)的表有多少?gòu)?/p>
13.這個(gè)項(xiàng)目后面有迭代嗎?如果有是怎么迭代的,迭代后又是怎么進(jìn)行測(cè)試的
14.這個(gè)項(xiàng)目有用到自動(dòng)化測(cè)試嗎?自動(dòng)化測(cè)試腳本用什么語(yǔ)言寫的,哪些模塊用了自動(dòng)化測(cè)試
15.項(xiàng)目周期,會(huì)問(wèn)你這個(gè)項(xiàng)目做了多久,測(cè)試是什么時(shí)候介入的
16.對(duì)于大流量的網(wǎng)站,您采用什么樣的方法來(lái)解決訪問(wèn)量問(wèn)題?
17.Sql 語(yǔ)句的優(yōu)化?
18.什么是頁(yè)面靜態(tài)化?
19.如何實(shí)現(xiàn)用戶的安全登錄?
20.Redis 有幾種持久化的方式?redis 缺點(diǎn)是什么?
21.高并發(fā)如何處理?
受篇幅限制無(wú)法完整展示,以上面試題答案,文末進(jìn)群領(lǐng)取答案
三、功能需求描述
登陸功能怎么測(cè)試?
1.輸入正確的用戶名和密碼,點(diǎn)擊提交按鈕,驗(yàn)證是否能正確登錄,能否能跳轉(zhuǎn)到正確的頁(yè)面 2.輸入錯(cuò)誤的用戶名, 驗(yàn)證登錄失敗,并且提示相應(yīng)的錯(cuò)誤信息
3.輸入錯(cuò)誤的密碼, 驗(yàn)證登錄失敗,并且提示相應(yīng)的錯(cuò)誤信息
4.用戶名為空, 驗(yàn)證登錄失敗,并且提示相應(yīng)的錯(cuò)誤信息
5.密碼為空, 驗(yàn)證登錄失敗,并且提示相應(yīng)的錯(cuò)誤信息
6.用戶名和密碼都為空,點(diǎn)擊登陸
7.用戶名和密碼前后有空格的處理
性能方面的測(cè)試
1.打開登錄頁(yè)面,需要多長(zhǎng)時(shí)間
2.輸入正確的用戶名和密碼后,登錄成功跳轉(zhuǎn)到新頁(yè)面,需要多長(zhǎng)時(shí)間
安全性方面的測(cè)試
1.密碼是否在前端加密,在網(wǎng)絡(luò)傳輸?shù)倪^(guò)程中是否加密
2.用戶名和密碼的輸入框,能否防止SQL注入攻擊
3.用戶名和密碼的輸入框,能否防止XSS攻擊
4.錯(cuò)誤登陸的次數(shù)限制(防止暴力破解)
5.是否支持多用戶在同一機(jī)器上登錄
6.一個(gè)用戶在不同終端上登陸
7.用戶異地登陸
用戶體驗(yàn)測(cè)試
1.頁(yè)面布局是否合理,輸入框和按鈕是否對(duì)齊
2.輸入框的大小和按鈕的長(zhǎng)度,高度是否合理
3.是否可以全用鍵盤操作,是否有快捷鍵
4.輸入用戶名,密碼后按回車,是否可以登陸
5. 牽扯到驗(yàn)證碼的,還要考慮文字是否扭曲過(guò)度導(dǎo)致辨認(rèn)難度大,考慮顏色(色盲使用者),刷新或換一個(gè)按鈕是否好用
兼容性測(cè)試
BS架構(gòu):不同瀏覽器測(cè)試,比如:IE,火狐,谷歌,360這些。
APP:在主流的不同類型,不同分辨率,不同操作系統(tǒng)的手機(jī)上測(cè)試,華為,vivo,oppo等
支付功能怎么測(cè)試(特別重要)
1、從功能方面考慮
1)用戶的使用場(chǎng)景:包括正常完成支付的流程;支付中斷后繼續(xù)支付的流程;支付中斷后結(jié)束支付的流程;單訂單支付的流程;多訂單合并支付的流程;余額不足;未綁定銀行卡;密碼錯(cuò)誤;密碼錯(cuò)誤次數(shù)過(guò)多;找人代付;弱網(wǎng)狀態(tài)下,連續(xù)點(diǎn)擊支付功能功能,會(huì)不會(huì)支付多次;分期付款等;
2)不同終端上支付:包括PC端的支付、筆記本電腦的支付、平板電腦的支付、手機(jī)端的支付等;
3)不同的支付方式:銀行卡網(wǎng)銀支付、支付寶支付、微信支付等;
4)從產(chǎn)品容錯(cuò)性上:包括支付失敗后,能否再次支付、能否退款;
2、從性能方面考慮
多個(gè)用戶并發(fā)支付能否成功;
支付的響應(yīng)時(shí)間;
3、從安全性方面考慮
使用Fiddler攔截訂單信息,并修改訂單金額,或者修改訂單號(hào),(下兩個(gè)訂單A,B,付款時(shí)攔截訂單B,并把訂單B的訂單號(hào)改為A訂單的訂單號(hào))無(wú)法完成支付;
4、從用戶體驗(yàn)方面考慮
是否支持快捷鍵功能;
點(diǎn)擊付款按鈕,是否有提示;
取消付款,是否有提示;
UI界面是否整潔;
輸入框是否對(duì)齊,大小是否適中等。
5、兼容性
BS架構(gòu):不同瀏覽器測(cè)試。
APP:不同類型,不同分辨率,不同操作系統(tǒng)的手機(jī)上測(cè)試
購(gòu)物車怎么測(cè)試?(特別重要)
1.功能測(cè)試
a)未登錄時(shí):
將商品加入購(gòu)物車,頁(yè)面跳轉(zhuǎn)到登錄頁(yè)面,登錄成功后購(gòu)物車數(shù)量增加。
b)登錄后:
所有鏈接是否跳轉(zhuǎn)正確;
商品是否可以成功加入購(gòu)物車;
購(gòu)物車商品總數(shù)是否有限制;
商品總數(shù)統(tǒng)計(jì)是否正確;
全選功能是否可用;
刪除功能是否可用;
價(jià)格總計(jì)是否正確;
商品文字太長(zhǎng)時(shí)是否顯示完整;
購(gòu)物車中下架的商品是否有標(biāo)識(shí),是否還能支付;
新加入購(gòu)物車商品排序(添加購(gòu)物車中存在的店鋪的商品和購(gòu)物車中不存在的店鋪的商品); - 是否支持快TAB、ENTER等快捷鍵;
商品刪除后商品總數(shù)是否減少;
收藏功能是否可用;
購(gòu)物車結(jié)算功能是否可用。
2.兼容性測(cè)試
BS架構(gòu):不同瀏覽器測(cè)試,比如:IE,火狐,谷歌,360這些。
APP:在主流的不同類型,不同分辨率,不同操作系統(tǒng)的手機(jī)上測(cè)試,華為,vivo,oppo等
3.用戶體驗(yàn)測(cè)試
刪除商品是否有提示;
是否支持快捷鍵功能;
是否有回到頂部的功能;
商品過(guò)多時(shí)結(jié)算按鈕是否可以浮動(dòng)顯示;
購(gòu)物車有多個(gè)商品時(shí),能不能只對(duì)單個(gè)商品結(jié)算;
界面布局、排版是否合理;
文字是否顯示清晰;
不同賣家的商品是否區(qū)分明顯。
4.性能測(cè)試
打開購(gòu)物車頁(yè)面要多長(zhǎng)時(shí)間
【電商項(xiàng)目實(shí)戰(zhàn)】對(duì)應(yīng)的相關(guān)文檔,教程,源碼可以下方卡片進(jìn)群獲取!