版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、網(wǎng)上書店一、實驗目的與要求- 2 -二、需求分析- 2 -三、系統(tǒng)分析與設計- 4 -1、系統(tǒng)結構設計- 4 -2、數(shù)據(jù)設計- 8 -2.1 概念結構設計- 8 -2.2 邏輯結構設計- 9 -2.3 數(shù)據(jù)庫的并發(fā)- 10 -2.4 存儲過程的創(chuàng)建- 10 -四、程序設計- 11 -1. 主頁面模塊- 11 -2.用戶注冊模塊- 11 -3用戶登錄模塊- 12 -4查看訂單模塊- 12 -五、軟件測試- 13 -1、測試項目- 13 -2.測試步驟- 18 -六、實驗總結- 23 -七、參考資料- 24 -一、實驗目的與要求本測試報告為網(wǎng)上書店的測試報告,目的在于總結測試階段的測試情況以及分析
2、測試結果,描述系統(tǒng)是否符合用戶需求,是否已達到用戶預期的功能目標,并對測試質量進行分析。測試報告參考文檔提供給用戶、測試人員、開發(fā)人員、項目管理者、其他管理人員和需要閱讀本報告的人員閱讀。測試主要根據(jù)用戶需求說明書和軟件需求規(guī)格說明書以及相應的文檔進行系統(tǒng)測試,包括功能測試、性能測試、安全性和訪問控制測試、用戶界面測試以及兼容性測試等,而單元測試和集成測試由開發(fā)人員來執(zhí)行。二、需求分析首先對現(xiàn)有系統(tǒng)進行分析,現(xiàn)有系統(tǒng)是信息的重要來源。分析已有系統(tǒng)的功能和實現(xiàn),從而確定新系統(tǒng)的設計目標和模型。設計出程序,再對已編譯的程序進行軟件測試。1、從用戶角度用戶通過在線注冊成為網(wǎng)站的用戶,可以獲得以下功能
3、:書目瀏覽,購買圖書,查看訂單,修改訂單,修改密碼,修改個人信息,書籍簡介,投票箱等。另外,用戶注冊成功后,可以進入到網(wǎng)站的留言板塊進行留言等。2、從網(wǎng)站角度(1)網(wǎng)站應該包含商品搜索功能:按書名(模糊)查詢。(2)訂單處理功能,確認訂單方式:a). 電話通知方式b). E-mail方式(3)管理員管理:查看用戶信息,并根據(jù)用戶信息和用戶訂單對商品進行發(fā)派。(4)書目瀏覽a).書名 b).出版社 c).作者 d).價格 e).訂購號(5)好書的投票查看用戶好書投票的信息及投票百分比的評比。(6)論壇 用戶進行信息交流的地方,可以在留言板進行留言,為查找圖書提供好的網(wǎng)站等等。 根據(jù)以上的需求分析
4、,可以畫出用戶的用例圖,圖1.1用戶的用例圖 根據(jù)需求也可畫出管理員的用例圖, 圖1.2管理員用例圖系統(tǒng)的類圖:圖1.3系統(tǒng)類圖三、系統(tǒng)分析與設計1、系統(tǒng)結構設計根據(jù)需求分析與系統(tǒng)功能設計目標,結合實際情況本系統(tǒng)功能模塊設計分為如下幾個模塊:(1). 主頁:在這里我們可以看見本系統(tǒng)的主要功能和信息。(2)用戶注冊:在這里我們可以注冊我們的基本信息,其中電話和Email是比較重要的,因為我們需要對這些信息進行處理,以方便用戶的付款和郵購。詳細過程如下圖所示:圖 用戶注冊活動圖(3)用戶登陸:為了方便用戶的付款,郵購和管理,我們需要變成會員后才可以進行消費。(4)書目瀏覽:成功登陸后的用戶可以分頁
5、瀏覽圖書書目,并將想要的圖書提交到填寫訂單頁面。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登錄頁面”。具體過程如下圖所示:圖 查詢書籍活動圖(5)訂購圖書:成功登陸的用戶可以在該頁面定購所需要的圖書。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面”。登錄之后的用戶,選購自己想要的圖書,加入購物車,申請結賬,詳細過程如圖所示:圖: 購書序列圖(6)查看訂單:成功登陸的用戶可以在該頁修改已經(jīng)訂購的圖書。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面”。訂單的狀態(tài)圖如圖所示:圖 訂單狀態(tài)圖(7)修改訂單
6、:成功登陸的用戶可以在該頁修改或刪除已經(jīng)訂購的圖書。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面”。(8)書目查詢:成功登陸的用戶可以在該頁查找自己需要的圖書。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面”。(9)修改密碼:成功登陸的用戶可以在該頁修改自己的密碼。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面”。(10)修改個人信息:成功登陸的用戶可以在該頁修改自己當初注冊時的信息。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面”。(11)留言板:成功登錄
7、的用戶可以在該頁留言。(12).管理員登陸:管理員要想管理網(wǎng)上書店,應先登錄,詳細過程如圖所示:圖:管理員登錄順序圖(13)管理員:查看用戶訂單,查看用戶信息,并根據(jù)用戶信息和用戶訂單對商品進行發(fā)派。詳細過程如圖所示:圖管理員活動圖2、數(shù)據(jù)設計2.1 概念結構設計1)根據(jù)需求分析,可知系統(tǒng)中的實體主要有管理員admin、用戶member、書本book、訂單orderbook等。部分實體屬性圖如下圖所示:AdminIdAddtimePasswordName圖2.2.1 admin屬性圖2)、根據(jù)實體間的關系,可以畫出系統(tǒng)的全局E-R圖,如下圖所示:會員購買圖書審核訂單審核購物車購買評價發(fā)表游客注
8、冊瀏覽圖 系統(tǒng)E-R圖2.2 邏輯結構設計 根據(jù)概念結構設計的結果,設計出“網(wǎng)上書店系統(tǒng)”數(shù)據(jù)庫的邏輯關系模型,將系統(tǒng)E-R圖轉化為關系模型:書籍(書號,書名,圖片,作者,出版社,價格,類別)用戶(注冊號,登錄名,密碼,用戶名,性別,電話,郵件地址)管理員(管理員編號,用戶名,密碼,添加時間)訂單(訂單號,書號,數(shù)量,總價) 根據(jù)用戶的需求分析和系統(tǒng)設計的總體過程,下面介紹幾個主要的數(shù)據(jù)表的結構和用途。分別為圖書書目表book, 用戶注冊表member, 管理員表admin訂單表order。2.3 數(shù)據(jù)庫的并發(fā) 兩個用戶同時請求一本書的時候,一個人完成后,要等待update更新完畢后,另一個人
9、才可以執(zhí)行,即要等待5秒。具體過程如下圖所示:2.4 存儲過程的創(chuàng)建 存儲過程是一組完成特定功能的SQL語句集,經(jīng)編譯后存儲在數(shù)據(jù)庫中。用戶通過指定存儲過程的名字并給出參數(shù)(如果該存儲過程帶有參數(shù))來執(zhí)行存儲過程。以在購物車顯示加入的書為例,顯示加入到購物車里所有書的書名及數(shù)量等信息,具體過程如下圖所示:圖 創(chuàng)建存儲過程四、程序設計1. 主頁面模塊 主頁面中上部包含:標題:歡迎光臨網(wǎng)上書店此刻訪問的時間和訪問本站的人數(shù)等部分。圖3.1 系統(tǒng)主界面2.用戶注冊模塊 用戶注冊是為第一次登錄網(wǎng)站的用戶所設計的。在用戶成為本站用戶之前一定要注冊才可以訪問我網(wǎng)站的其它網(wǎng)頁。用戶注冊包括:登錄名稱,真實姓
10、名,設置密碼,電子郵件等。注冊成功后,才可以訪問本站的其他頁面。圖3.2 用戶注冊界面3用戶登錄模塊 用戶登錄包括:登錄名稱,輸入密碼。當用戶登錄后由管理員核對該用戶的名稱和密碼是否正確,如果無誤的話用戶可以通過檢查直接進入網(wǎng)站的其它頁面進行瀏覽和訂購。圖3.3用戶登錄界面4查看訂單模塊查看訂單:成功登陸的用戶可以在該頁修改已經(jīng)訂購的圖書??梢圆樵兾业挠唵危匆呀?jīng)購買的書籍。圖3.6用戶個人中心界面五、軟件測試1、測試項目該測試項目主要針對網(wǎng)上書店系統(tǒng)用戶登錄界面的注冊、登錄功能進行測試。用戶注冊、登錄界面包括了網(wǎng)上書店系統(tǒng)標題,用戶名、密碼標簽,用戶名、密碼輸入框,以及登錄、取消按鈕。界面功
11、能由Java編程實現(xiàn),包括輸入、登錄、取消功能。假設該系統(tǒng)只有一個用戶,因此只有一個用戶名和一個密碼(用戶名admin,密碼111111),該測試項目在這個基礎上,對用戶名、密碼輸入的各種情況進行測試,之后比較最后結果與預期結果,達到測試這個登錄功能的目的。用戶注冊界面如下:用戶登錄界面:主要實現(xiàn)的功能如下:用戶登錄包括:登錄名稱,輸入密碼。當用戶登錄后由管理員核對該用戶的名稱和密碼是否正確,如果無誤的話用戶可以通過檢查直接進入網(wǎng)站的其它頁面進行瀏覽和訂購。注冊功能實現(xiàn)代碼如下:(1)用戶注冊 userRegister,jsp:<%String str=response.encodeUR
12、L("userRegister.jsp");%><H3><P>輸入您的信息,帶*號項必須填寫:<FORM action="<%=str%>" Method="post"><BR>登錄名稱<Input type=text name="logname">*<BR>真實姓名<Input type=text name="realname">*<BR>設置密碼<Input type=pa
13、ssword name="password">* <BR>電子郵件<Input type=text name="email"> *<BR>聯(lián)系電話<Input type=text name="phone">*<BR>通信地址<Input type=text name="address">*<BR><Input type=submit name="g" value="提交">&
14、lt;/Form><jsp:useBean id="login" class="book.Register" scope="request" ></jsp:useBean><% Stringlogname="",realname="",password="",email="",phone="",address=" if(!(session.isNew() logname=request.ge
15、tParameter("logname"); if(logname=null) logname="" logname=codeString(logname); realname=request.getParameter("realname"); if(realname=null) realname="" realname=codeString(realname); password=request.getParameter("password"); if(password=null)passwo
16、rd="" password=codeString(password); email=request.getParameter("email"); if(email=null) email="" email=codeString(email); phone=request.getParameter("phone"); if(phone=null) phone="" phone=codeString(phone); address=request.getParameter("addres
17、s"); if(address=null) address="" address=codeString(address); %> <%if(!(logname.equals("")&&!(address.equals("")&&!(phone.equals("")&&!(realname.equals("")&&!(password.equals("")%> <jsp:setPr
18、operty name= "login" property="logname" value="<%=logname%>" /> <jsp:setProperty name= "login" property="realname" value="<%=realname%>" /> <jsp:setProperty name= "login" property="password" value
19、="<%=password%>" /> <jsp:setProperty name= "login" property="email" value="<%=email%>" /> <jsp:setProperty name= "login" property="phone" value="<%=phone%>" /> <jsp:setProperty name= "login
20、" property="address" value="<%=address%>" /> <% login.addItem(); elseout.print("你還沒有填寫信息,或信息填寫不完整"); %> <% if(!(session.isNew() %><jsp:getProperty name= "login" property="message" />本程序用了Bean: Rigister.javamport java.s
21、ql.*;public class Register String logname,realname,password,email,phone,address; String message; Connection con; Statement sql; ResultSet rs; public Register() tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e);public void addItem()trycon=DriverManager.getCon
22、nection("jdbc:odbc:shop","",""); sql=con.createStatement(); Strings="'"+logname+"'"+","+"'"+realname+"'"+","+"'"+password+"'"+","+"'"+email+&q
23、uot;'"+","+"'"+phone+"'"+","+"'"+address+"'"String condition="INSERT INTO user VALUES"+"("+s+")"sql.executeUpdate(condition);message="注冊成功了"con.close();catch(SQLException e)me
24、ssage="你還沒有注冊,或該用戶已經(jīng)存在,請你更換一個名字" (2)登錄功能實現(xiàn)代碼如下:用戶登錄 userLogin.jsp:<%String string=response.encodeURL("userLogin.jsp");%><H3><P>輸入用戶名和密碼:<FORM action="<%=string%>" Method="post"><BR>登錄名稱<Input type=text name="logname&
25、quot;><BR>輸入密碼<Input type=password name="password"><BR><Input type=submit name="g" value="提交"></Form><jsp:useBean id="login" class="book.Login" scope="session" ></jsp:useBean> <% String messag
26、e="",logname="", password="" if(!(session.isNew() logname=request.getParameter("logname"); if(logname=null) logname="" logname=codeString(logname); password=request.getParameter("password"); if(password=null) password="" password=
27、codeString(password); %> <%if(!(logname.equals("")%> <jsp:setProperty name= "login" property="logname" value="<%=logname%>" /> <jsp:setProperty name= "login" property="password" value="<%=password%>"
28、/> <p> <%message=login.getMessage(); if(message=null) message="" %> <% if(!(session.isNew() if(message.equals("ok") String str=response.encodeURL("buybook.jsp"); response.sendRedirect(str); else out.print(message);%>2.測試步驟1)分析及等價類劃分該程序的用戶名admin,密碼11
29、1111,只有輸入正確,才能登錄成功。而登錄不成功有幾種情況。用戶登錄輸入時,有以下幾種情況(即等價類劃分情況):(1)用戶名admin,密碼111111,有效等價類(2)用戶名為空,密碼為空,無效等價類(3)用戶名非空,密碼為空,無效等價類(4)用戶名為空,密碼非空,無效等價類(5)用戶名非空非admin,密碼非空非111111,無效等價類(6)用戶名非空非admin,密碼1234,無效等價類(7)用戶名admin,密碼非空非1234,無效等價類2)根據(jù)邊界值條件確定測試用例以上等價類劃分了1個有效等價類,6個無效等價類。為此,確定1個有效等價類測試用例,無效等價類(2)僅能確定一個測試用例
30、,其余5個無效等價類各兩個測試用例,總共確定12個測試用例。調試數(shù)據(jù)范圍期望結果用戶名admin 密碼111111有效等價類(1)有效用戶名null 密碼null無效等價類(2)無效用戶名admin 密碼null無效等價類(3)無效用戶名a 密碼null無效等價類(3)無效用戶名null 密碼111111無效等價類(4)無效用戶名null 密碼111無效等價類(4)無效用戶名a 密碼12無效等價類(5)無效用戶名ad 密碼1111無效等價類(5)無效用戶名a 密碼111111無效等價類(6)無效用戶名ad 密碼111111無效等價類(6)無效用戶名admin 密碼11無效等價類(7)無效用戶名admin 密碼111無效等價類(7)無效3) 、使用因果圖法設計測試用例,并設計對應的預期輸出結果。根據(jù)等價類劃分,可假設:原因:c1用戶名為admin c2用戶名為空 c3密碼為111111 c4密碼為空結果:e1登錄成功,當用戶登錄后由管理員核對該用戶的名稱和密碼是否正確,如果無誤的話用戶可以通過檢查直接進入網(wǎng)站的其它頁面進行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 導游合同范文
- 智能語音交互技術開發(fā)與合作協(xié)議
- 區(qū)塊鏈電子票務系統(tǒng)技術開發(fā)合作協(xié)議
- 寫字樓出售合同
- 電子商務平臺交易規(guī)則協(xié)議
- 公司合并協(xié)議書
- 酒廠合作協(xié)議范文
- 智能倉儲物流系統(tǒng)建設合同
- 跨境電商平臺開發(fā)及運營合作協(xié)議
- 2025年度環(huán)保班組承包經(jīng)營合同樣本3篇
- 軍隊文職(新聞專業(yè))招聘考試(重點)題庫200題(含答案解析)
- 人教版(2024)數(shù)學七年級上冊期末測試卷(含答案)
- 2024-2020年上海高考英語作文試題匯編 (解讀及范文)
- 上海市2023-2024學年六年級上學期期末科學試卷(含答案)
- 非物質文化遺產(chǎn)主題班會之英歌舞課件
- 港口經(jīng)濟學智慧樹知到期末考試答案章節(jié)答案2024年上海海事大學
- 內墻涂料工程監(jiān)理實施辦法
- 空調(熱泵)室內機首檢記錄表
- JIS G4305-2021 冷軋不銹鋼板材、薄板材和帶材
- 2022年新媒體編輯實戰(zhàn)教程試題帶答案(題庫)
- 園林生態(tài)學(冷生平)課后練習答案(完整版本)
評論
0/150
提交評論