基于Android的美圖娛樂軟件的設計與實現_第1頁
基于Android的美圖娛樂軟件的設計與實現_第2頁
基于Android的美圖娛樂軟件的設計與實現_第3頁
基于Android的美圖娛樂軟件的設計與實現_第4頁
基于Android的美圖娛樂軟件的設計與實現_第5頁
已閱讀5頁,還剩75頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

word文檔可自由復制編輯word文檔可自由復制編輯中圖分類號:TP3論文編號:10006GS1421639專業碩士學位論文此文是代寫,送給自己寫論文的學生們,目前重復率知網7%,知網沒有什么資料,顧客拒絕支付尾款。聯系q1144267233基于Android的美圖娛樂軟件的設計與實現作者姓名張田學科專業軟件工程指導教師申雪萍培養院系軟件學院DesignandimplementationofbeautificationpicturesandentertainmentsoftwarebasedonAndroidADissertationSubmittedfortheDegreeofMasterCandidate:ZhangTianSupervisor:Pro.ShenXuepingSchoolofSoftwareBeihangUniversity,Beijing,China中圖分類號:TP3論文編號:10006GS1421639碩士學位論文基于Android的美圖娛樂軟件的設計與實現作者姓名張田申請學位級別工程碩士指導教師姓名申雪萍職稱副教授學科專業軟件工程研究方向移動云計算學習時間自年月日起至年月日止論文提交日期年月日論文答辯日期年月日學位授予單位北京航空航天大學學位授予日期年月日關于學位論文的獨創性聲明本人鄭重聲明:所呈交的論文是本人在指導教師指導下獨立進行研究工作所取得的成果,論文中有關資料和數據是實事求是的。盡我所知,除文中已經加以標注和致謝外,本論文不包含其他人已經發表或撰寫的研究成果,也不包含本人或他人為獲得北京航空航天大學或其它教育機構的學位或學歷證書而使用過的材料。與我一同工作的同志對研究所做的任何貢獻均已在論文中作出了明確的說明。若有不實之處,本人愿意承擔相關法律責任。學位論文作者簽名:

日期:年月日學位論文使用授權書本人完全同意北京航空航天大學有權使用本學位論文(包括但不限于其印刷版和電子版),使用方式包括但不限于:保留學位論文,按規定向國家有關部門(機構)送交學位論文,以學術交流為目的贈送和交換學位論文,允許學位論文被查閱、借閱和復印,將學位論文的全部或部分內容編入有關數據庫進行檢索,采用影印、縮印或其他復制手段保存學位論文。保密學位論文在解密后的使用授權同上。學位論文作者簽名:日期:年月日指導教師簽名:日期:年月日word文檔可自由復制編輯word文檔可自由復制編輯摘要隨著科技水平的提高和人們生活質量的提高,人們從最初的電話、短信等文字信息的交流,到現在的圖片、視頻等圖像信息的傳播,圖片在人們生活中也處于不可缺少的一部分。與之相匹配的是圖像處理需求也日漸增加。為了滿足墟市的這部分需求,設計一款以Android為操作平臺的美圖娛樂軟件,滿足人在移動端對圖象的處理需求。本產品是以C/S(ClientandServer)架構實現的,由于移動網絡并不像互聯網的高速,所以會比在互聯網下有更高的要求。本文在應對高并發情況下產生的數據響應實時性、數據容災處理、安全性以及對應的數據存儲等實際問題做了主要論述,并給出了具體的解決方案。由于該產品主要以圖片分享為手段,即需要本系統能夠應對這類數據檢索的及時性,我們采用對象存儲技術來解決該問題,并在其中利用緩存機制來提高數據檢索速度。論文通過闡述課題的背景、意義、國內外分析現狀以及根據公司的制定的策略確定了本文的研究內容和目標。通過需求分析闡述了系統的功能性需求和非功能性需求,并通過提出的需求來實現系統的整個設計。其主要成果有:實現調用系統相機進行直接拍照,和從相冊讀取照片的兩種圖像獲取功能;實現圖像處理的5種編輯方式,其中包括:濾鏡、調整、虛化、摳圖、裁切,調用系統保存接口;實現將圖片保存到本地和分享至軟件的功能。在文章最后,通過功能測試和性能測試證明了本系統的設計達到了預期要求。關鍵詞:圖像處理,圖片調整,軟件工程,AndroidABSTRACTWiththeincreaseofthelevelofscienceandtechnologyandtheimprovementofpeople'squalityoflife,peoplefromtheinitialtelephone,SMStextmessageexchange,nowspreadtothepicturesandvideoimageinformation,imageinpeople'slifeisalsoanindispensablepartof.Matchingtheimageprocessingrequirementsarealsoincreasing.Inordertomeettheneedsofthispartofthemarket,thedesignofaAndroidplatformfortheoperationoftheU.S.entertainmentsoftwaretomeettheneedsofpeopleinthemobileterminalimageprocessing.ThisproductisbasedonC/S(ClientandServer)architecture,becausethemobilenetworkisnotashighastheInternet,sotherewillbehigherrequirementsthantheinternet.Inthispaper,wedealwiththepracticalproblemsofreal-timeresponse,datadisastertolerance,securityanddatastorageinthecaseofhighconcurrency.Theproductsaremainlyforphotosharingmeansthatthesystemcandealwiththistypeofdataretrievalandtimeliness,weusetheobjectstoragetechnologytosolvetheproblem,andinwhichtheuseofcachingmechanismtoimprovethespeedofdataretrieval.Basedonthebackground,significance,domesticandinternationalanalysisofthestatusquoandthecompany'sstrategytodeterminethecontentandobjectivesofthisstudy.Thispaperdescribesthefunctionalrequirementsandnonfunctionalrequirementsofthesystemthroughrequirementanalysis,andrealizesthewholesystemdesign.Themainresultsareasfollows:Toachievethecallsystemcameratotakepicturesdirectly,andfromthealbumtoreadphotosofthetwoimageacquisitionfunction.Therealizationofthe5kindsofediting,imageprocessingincludingfilters,adjustment,virtual,matting,cutting.Callthesystemtosavetheinterface,theimagewillbesavedtothelocalandsharethefunctionofthesoftware.Attheendofthepaper,thefunctiontestandperformancetestshowthatthedesignofthesystemhasachievedtheexpectedrequirements.Keywords:DigitalImageProcessingSystem,mageAdjustment,SoftwareEngineering,Android目錄第一章緒論 圖32所示。圖SEQ圖\*ARABIC32基礎色板考慮到界面的友好性,設計圖標為以粗細為4px、圓角半徑4px的圓角矩形為形狀基礎,以#e9eeef為圖標正常狀態顏色,#cb7eff為選中狀態顏色制作出應用中的圖標。部分圖表展示如圖33所示。圖SEQ圖\*ARABIC33部分圖標設計從易用性考慮,統一操手勢為:通過點擊標簽欄的按鈕來切換和選擇所需功能。對于需要調節數值的操作(例如虛化程度的調節、旋轉角度的調節等),增加滑動條的拖動調節。滑動條如圖34所示。圖SEQ圖\*ARABIC34滑動條4.4系統開發及運行環境介紹(1)開發環境:Windows7操作系統。(2)運行環境:安卓手機、安卓模擬器、安卓平板。(3)IDE:Androidstudio2.0。(4)支持版本:Android4.4以上。(5)開發語言:Java語言。4.5本章小結本章介紹了美圖娛樂軟件的概要設計。概要設計的基礎理論是依據第三章對手機圖片處理的需求分析得出的。本章通過對應用需求分析進而設計除了應用的功能模塊,又通過分析應用的功能模塊設計出了了應用開發的體系架構即CS架構,將美圖娛樂軟件的概要設計完成。完成了系統總體的概念設計,接下來,將進入到實際操作部分,闡述具體的實現方法和詳細功能設計,即開發環節的設計。第五章系統詳細設計5.1數據庫的設計5.1.1數據庫設計原則當今數據庫主流形式為關系型數據庫,其目的在于對身邊的所有的事物都進行抽象,抽象成具體對象,以及對象和對象之間的關系。良好的數據庫設計是一個優秀項目的基石。實際上,在顯示工作中也完全體現出這一點,系統中無時無刻不在對數據進行處理,可以說良好的數據庫模型,可以驅動整個業務模型更加完善同時簡單。同樣的模型,但是只是由于數據庫設計就可以導致整個應用的效率和頁面相應問題。一個糟糕的數據庫設計,一次查詢會涉及多個表的關聯,導致一次業務需要訪問多次數據庫,帶來很大的開銷。在顯示中同樣要考慮到數據的問題,比如說對于用戶及類型數據,對于糟糕的設計來說并不會考慮該問題,只是進行簡單的存儲,并沒有進行存儲效率考慮,后期隨著應用的擴展數據庫的性能會直線下降。首先我們討論下數據庫設計的幾個基本原則:對于現實的抽象,要做到盡量體現真實情況,對象間的關系并不是簡單的一對一。其中包括一對多和多對多的關系,這些關系會直接影響我們的數據插入操作。級明確原始數據與實體間的關系由于實體間存在關系,所以在一個表中不能即沒有主鍵同時也沒有外鍵。由于主鍵是對于實體的抽象,而外鍵則是對關系的抽象,通過主鍵與外鍵的關系來表達實體與實體間的關系連接在整個的數據庫中,表與表之間的作用也不盡相同,比較重要的是基礎表,其應該具備以下幾大特點。首先是原子性,由于表示一個實體對象的抽象,則表中的字段應該是最小單位來表達其屬性的關鍵點,其應該是不可在分解的。其次原始性,最原始的數據用來進行存儲,其他加工放到程序中去。再次演繹行,由于業務模型對原始數據進行處理后,會得到需求上所要的所有輸出。最后穩定性,保證表中的記錄是要長期保存的記錄對應現實的抽象要做到穩定性。設計范式數據庫中表為實體對象的后向,其中每個字段為原子性,都是不可拆分的原始數據,同一列中不能有多個值。具有唯一區分標識,記載表中的實例必須能夠被區分,不能夠有多義性。表與表間要求不能包含一再其他表中已包含的非關鍵信息以上的設計原則并不是神諭,有時為了需求也會對其進行規則上的打破。會創造出具有數據冗余度的表。根據以上的設計原則,整個系統的關系ER圖如圖35所示:圖SEQ圖\*ARABIC35系統ER圖5.1.2SQlite數據庫基本表公社表,包括公社ID,背景圖片,公社圖標,公社公告,公社名字,關注數,評論數,社長名和創建時間。圖SEQ圖\*ARABIC36本地公社表話題表,包括所屬的公社ID,話題ID,公社圖標,本話題的發起者,評論數,點贊數,話題文本,話題圖片,同步狀態,話題創建時間等。圖SEQ圖\*ARABIC37本地話題表 點贊表,包括用戶ID,公社ID,話題ID,評論ID,作者ID,圖片名,文本信息,創建時間和同步狀態。圖SEQ圖\*ARABIC38本地點贊表用戶表,該表記錄了注冊用戶信息。用于業務對用戶數據進行處理的原始數據表,該表主要存儲用戶相關記錄,用于展示用戶信息在業務數據中被經常使用。圖SEQ圖\*ARABIC39本地用戶表以上介紹了本系統地主要幾張原始數據存儲表,由于篇幅有限其他表不再做具體介紹。原始表存儲內容都為原始數據,設計原則上盡量保持原子性、穩定性的,基本符合三范式的要求。5.2主要功能模塊設計5.2.1拍照功能拍照上傳,用戶首先使用手機相機進行照片拍攝或者相冊選取圖片,然后進入工具進行美化,圖片申請上傳后,移動端會以POST的請求方式請求服務器圖片處理接口進行上傳操作。如果上傳成功則返回給移動端true并將圖片展示在社區首頁中。如果用戶上傳了相同圖片或者請求超時,則服務端會返回false,并且返回給移動端錯誤碼和錯誤信息,告知移動端所造成的非法操作的原因。其上傳照片狀態圖如圖40所示:圖SEQ圖\*ARABIC40圖片上傳狀態圖用戶通過手機拍攝照片或在相冊中選擇照片后,請求服務器進行上傳操作,并對關鍵參數進行校驗。完成以上工作后進行網路Socket連接,請求遠程存儲服務器。最后寫入遠程服務器工作。其具體工作方式為,先將請求上傳的圖片的大小和其文件進行request請求封裝并將其數據寫入緩沖區,之后建立Socket連接獲取遠程服務器套接字連接信息,之后對傳遞的request封裝數據并加上服務器校驗信息和所需其他信息進行機器碼轉換生成頭文件,之后進行遠程寫入數據,同時關閉Socket連接并且返回相關寫入信息,如果寫入成功,這遠程服務器返回成功信息,如果寫入不成功則返回錯誤碼,告知本系統寫入數據失敗,需要進行重試,如果在1次重試后仍不能寫入,則關閉Socket連接告知本系統寫入操作徹底失敗。圖41為用戶上傳照片時序圖:圖SEQ圖\*ARABIC41圖片上傳時序圖5.2.2評論功能用戶通過客戶端編寫所需添加的評論后,通過服務端評論功能下的add接口文件進行處理。在處理中會添加參數校驗,由于其屬于文本形式存儲元數據并會記錄在數據庫中,所以這里進行了防跨站腳本攻擊過濾預處理(在關鍵技術中會介紹腳本處理算法),處理后交給ReplyDic進行字典顧慮,過濾非和諧字符,該字典存儲在REDIS鏈中,其鏈名為rad類型為字符串,在獲取rad鏈中字符串后,進行按分割字符分割成單獨字符串組成數組后進行處理。所有預處理結束后寫入MySQL數據庫,并在圖片和評論關系鏈表中存儲對應評論ID。圖42為添加評論動態圖:圖SEQ圖\*ARABIC42添加評論動態圖5.2.3推送功能應用中系統推送包括兩部分,一種為廣播推送,推送用戶為所有注冊過推送功能的用戶,即一對多方式推送。第二種為單播推送,即對于特定用戶進行指定推送功能,即一對一方式推送。圖43為單播推送功能客戶端與服務器交互時序圖:圖SEQ圖\*ARABIC43單播推送功能客戶端與服務器交互時序圖單播推送功能由先前動作進行觸發,例如評論后,如果被評論的用戶沒有在評論列表頁,則系統會對當前接受評論方發送推送消息。當客戶端觸發推送動作后,客戶端會向服務器發送觸發評論業務請求,服務端首先對相關業務進行處理,之后進入單播推送流程。首先會向客戶端的PushSDK模塊發送確認推送信息請求,并確認其連接否存在,如果獲取到PushSDK返回的確認信息后,進行對應業務處理,包括比對PushSDK傳遞回來的最后一次獲取推送信息的ID號,并將其與當前將要發送推送的ID號進行比對,如果將要推送的ID號大于返回的ID號則進行推送,否則將不執行推送。在服務端,會保存每個終端的Session會話,同時PushSDK會在客戶端啟動Server服務,總是對推送服務進行嘗試連接。在推送時,服務端根據每個終端所建立的Session會話建立通信,將所需要推送的數據返回給客戶端進行處理。單播推送的數據表中包括用戶-Session關系表,對應用戶接受推送信息表。在第一個表中主要存儲用戶與服務端建立的Session映射關系,該表為實時更新表,更具客戶端是否還進行連進行跟新,目的是在單播推送時找到對應的唯一會話進行消息推送。用戶接受推送信息表,存儲對應用戶的推送消息ID用于對是否發送服務端推送進行對比。在進行推送時,無論是廣播還是單播,都有可能出現客戶端并沒有對服務器建立Session會話連接,比如關機或將應用殺死。此時單播推送來說,會在用戶接受推送信息表中建立時間戳存儲,當終端建立連接后,首先會進行消息ID對比,之后進行過期時間對比,本應用對過期時間設置為3天以內的數據。廣播推送過程為便利所有終端連接服務器的Session會話,將消息文本發送給對應存在Session連接的客戶端。5.3本章小結本章詳細闡述了各個模塊的執行方法,介紹了實現效果。詳細介紹了每個功能中所用到的主要算法與實現過程。接下來,本文將詳細介紹開發美圖娛樂軟件的測試方法。第六章系統測試6.1系統測試概述如何保證軟件的質量,在當今移動互聯網中快速的迭代中,在保證速度的同時質量也是其重要考慮點之一。系統再上線前一般都是經歷,提測-測試-發現bug-提測的一種閉環方式,知道bug數量成收斂狀態。同時需要解決關鍵bug例如影響整體功能的bug。如果將帶有問題的系統進行上線,那后果將是不可預知的,比如客戶端如果存在崩潰bug。再比如,如果服務端存在功能性的問題,在用戶修改個人信息時永遠不能正確返回,同樣會導致相同的后果。所以對于整個系統測試方式分為兩大塊,分別為服務端系統測試和客戶端系統測試,將這兩大塊才分后分別進行測試有利于問題的分析和定位,出現問題有針對性修改。當兩大端都沒有問題后,進行前端和后端聯調測試,該階段主要是為了模擬用戶正常操作查看服務端和客戶端通信是否有問題等。本系統主要采用黑盒測試進行檢查。黑盒測試又稱功能測試,也可稱為用戶測試。其方法是把程序看成一個黑色的盒子,完全不考慮程序處理過程和內部結構,以用戶的角度,測試程序的主要功能是否完善。黑盒測試法注重于測試軟件的功能需求,主要目的是為了發現這幾類錯誤:功能不正確或遺漏;界面錯誤;輸入和輸出錯誤;數據庫訪問錯誤;性能錯誤;初始化和終止錯誤等。整個測試分為服務端測試和客戶端測試:6.2服務端系統測試服務端系統測試:服務端主要考察點為數據庫方面、持久層代碼邏輯、業務層代碼邏輯、異常請求處理、錯誤容錯處理、整體模型性能指標、系統負載壓力峰值、評估預計業務增長量和壓力測試等。1、數據庫方面測試:主要方法為測試數據庫連接承載能力,其配置是否能夠適應預估線上并發請求,當數據達到多少時會產生查詢瓶頸。主要方式測試數據庫連接池承載能力,編寫腳本進行數據庫長連接,查看當句柄耗盡是策略是否正確,是否會夯主。2、持久成代碼邏輯:該層主要是對數據庫進行操作,一般封裝基礎增、刪、查、該基礎API并按照一定邏輯初步獲取原始數據。測試重點為,查看其基礎封裝是否符合預期,主要采用編碼方式進行測試,比對使用原生API進行檢索產生的數據與通過封裝后的API方法進行檢索產生的數據進行對比。3、業務層代碼邏輯:該層涉及到業務處理,不能夠使用數據比對的方式進行測試。所以采用CodeReview(代碼審查)+參數請求方式的功能測試進行人工check。在CodeReview中梳理業務策略,并按照系統中各個分支編寫測試用例,構造請求方式,進行人工返回數據驗證。4、異常請求處理:設計異常場景,對數據請求參數進行帶有攻擊行為的參數值,例如打印Linux服務器的配置信息等等命令。5、錯誤容錯處理:設計錯誤場景,例如刪除數據、請求參數不合法和數據庫連接失敗等場景。通過以上的方式對系統進行容錯處理驗證,健壯的系統應該返回對應的錯誤碼以及服務端產生的錯誤標識返回給客戶端,有客戶端做邏輯判斷,給用戶良好的體驗。6、整體模型性能指標:主要目的是模擬預估請求時部署系統的資源消耗,通過模擬預估請求來實現各個數據統計給出基準性能指標。7、系統負載壓力峰值:主要通過增壓的方式進行測試,模擬正常連接請求,在系統沒有夯主之前間隔性增加請求壓力。主要目的是探尋系統承載壓力的峰值數據,在線上達到會臨界該值時進行系統擴容。8、評估預計業務增長量:該測試主要是在系統正式運行后,統計系統天、星期、月的用戶增長量,預估算未來幾年內的業務增長量。主要目的給出預估會到達系統負載峰值的時間點,用于費用評估。9、壓力測試等:測試手段為長時間進行系統臨界峰值穩定負載,主要目的是測試系統在臨界峰值是長時間的運行狀態,給出整體數據。6.3客戶端系統測試6.3.1功能性測試客戶端功能測試主要包括:主界面功能測試,工具模塊功能測試和社區模塊功能測試。1.主界面功能測試的測試目的是檢測界面間的轉換、屏幕間切換等功能是否正常。測試能否正常導入手機中的圖片,或者拍攝的圖片。測試能否正常將編輯后的圖片保存至本地。2.工具功能測試測試目的是檢測界面是否切換良好,檢測編輯功能是否能正確應用到圖片上。選擇相冊中的一張圖片,Edit—Filter,點擊縮略圖中的各個濾鏡效果,觀察是否應用到圖片中。點擊標題欄中的確定和返回按鈕,查看應用效果是否跟操作一致;分別拖動三個滑動條,查看調整效果是否應用到圖片中;測試三種效果是否能正常顯示,拖動屏幕調整虛化位置,調整滑動條查看虛化程度是否有所不同;測試各功能間是否有沖突,能否正常運行。添加進不同分辨率的圖片看是否能順利摳圖,添加不同格式的圖片看是否能順利摳圖。3.社區功能測試測試目的檢測界面是否切換良好,檢測社區是否能正確滿足用戶的需求。主要測試圖片能否成功上傳。分別上傳不同格式、不同分辨率和不同大小的圖片,檢測服務器返回;將上傳參數故意填錯,看程序是否崩潰。測試圖片能否正常刪除。正常刪除和重復刪除同一張圖片,檢測是否可以成功刪除;將上傳參數故意填錯,看程序是否崩潰。測試用戶是否可以成功登錄。分別用QQ、微信和新浪微博登錄,查看返回數據,如能返回用戶所有信息,則測試通過。測試用戶是否可以成功評論。用戶分別上傳圖片評論、文字評論和既有圖片又有文字的評論,檢測是否可以成功評論。將上傳參數故意填錯,看程序是否崩潰。測試用戶是否可以成功收藏。單擊“收藏夾”按鈕進入“我的收藏夾”頁,檢查我的收藏頁是否已添加信息。測試用戶是否可以成功舉報。單擊“舉報”按鈕進入“舉報”頁,在舉報頁面中選擇不同的舉報原因并提交,查看服務器返回碼。6.3.2系統非功能性測試主要利用人工檢查,查看UI設計是否合理,是否符合設計預期,在進行手機其它操作時是否會對UI產生影響,例如翻轉屏幕。進行對層次的調起頁面,然后返回,查看其返回策略是否正常,主要在于多層次進行跳轉。由于各個終端系統不同,特別是Android系統終端,其由于開源方式,有很多廠家會對原生Android系統進行修改,這可能會導致一些功能在不同機型上展示不同。利用在執行本應用的過程中對,來電、鬧鐘、短信、提醒、插拔USB、鎖屏、翻轉屏幕以及網絡切換等方式進行測試,主要目的查看客戶端編碼的健壯性以及用戶體驗方面。在某些特定的功能中,進行邊界測試,例如文本輸入限制,錄制聲音限制單機注冊賬號限制推送接受信息條數限制等等。目的查看邊界值能夠正確被設置不影響用戶體驗。主要采用工具進行模擬點擊事件,并對崩潰狀態進行收集,或者是多次重復相同動作來驗證客戶端編碼健壯性。是不是有文字的錯誤、圖片顯示不出來或者顯示不準確、缺少輸入框、按鈕大小和點擊的效果。

布局、圖片和配色是否有設計問題,測試人員是否很難進入。

提示信息語言是否準確簡潔,有指導性。在該位置應提示提示信息,如程序需要訪問網絡,在沒有網絡的情況下給出提示。在必須訪問網絡的時候,在網絡不穩定的情況下,是否可以正常運行,不可以出現意外退出和錯誤;如果程序無法在此環境中運行,請提示用戶。程序進行某些功能時,不應使手機出現卡、頓等情況,視實際情況而定覆蓋,可覆蓋舊版本,并不會出現異常在多進程切換中,應正常運轉,并保持切換前頁面,不應該出現意外退出和錯誤。輸入法彈出的軟鍵盤是否擋住了輸入框;軟鍵盤上的回車按鍵是否在需要搜索時點擊可以跳轉到下一個輸入框,在需要調到下一個輸入框時能否調到下一個輸入框。

6.4測試內容根據上一節討論的測試方法,本節會介紹部分測試用例設計的case由于篇幅有限,只展示部分模塊的測試用例。服務端正常功能測試用力:1.圖片模塊功能測試用例,包括主要功能為上傳圖片和刪除圖片由于用例較復雜這里只能展示部分,這些部分關鍵的用例對于測試系統的關鍵功能是至關重要的,如表1所示:表SEQ表\*ARABIC1圖片模塊測試用例功能點測試點步驟預期上傳圖片功能1_上傳只帶音頻描述的圖片1.使用curl構造post請求,字段設置為01.終端返回status=0,和上傳的圖片mid;.2.MESSAGE數據庫里存入了該圖片,并且字段都正確;功能2_圖片大小校驗1.構造post的圖片size>512K,發送請求2.構造post的圖片size=0,發送請求3.構造post的圖片sizein[0,512k],發送請求1.無法上傳圖片2.無法上傳圖片3.正常上傳圖片功能3_參數異常檢查1.構造url里的uid為空,非整型,發送請求2.構造url里的voice_duration為空,非整型,發送請求1.status=-1,不能上傳,給出提示信息2.status=-1,不能上傳,給出提示信息刪除圖片功能1_正常刪除1.構造url里的uid和mid,確保mid在該用戶的mlist里1.返回status=02.用戶個人鏈里該mid標記為刪除(:1),查看命令:lrangeu:20-13.將刪除的mid從MESSAGE數據庫中打上刪除標記;功能2_重復刪除相同圖片1.構造正確的url,發送請求2.相同的url再發送一次請求返回status=-30,不能重復刪除功能3_參數檢查1.構造url里的uid為非整型,空,特殊字符,uid和mid的對應關系在數據庫里不存在返回status為錯誤狀態,并給出提示,并且redis里對應的用戶個人鏈,大廳信息鏈和push鏈都無變化2.用戶模塊測試用例,展示用戶登錄和獲取用戶信息功能的測試用例設計,如表2所示:表SEQ表\*ARABIC2用戶模塊測試用例功能點測試點步驟預期登錄功能1_從新浪正常登錄1.構造正確url,配置正確參數1.返回status=0,is_exist=true2.返回改用戶所有個人信息,包括如下字段功能2_從百度正常登錄1.構造正確的url,配置正確參數2.發送請求,token可帶可不帶1.返回status=0,is_exist=true2.返回改用戶所有個人信息功能3_參數字段類型檢查1.構造正確的url,每個參數取非法的值,發送請求2.構造正確的url,user_name,loginfrom.token相互不對應1.返回status為錯誤狀態,無法返回用戶信息獲取用戶信息功能1_正確獲取用戶信息1.構造正確的url,設置正確的data參數1.返回status=02.用戶存在的情況下,返回sizeof(data)組用戶的信息功能2_過濾非法用戶uid1.data里構造一個元素,為非法用戶uid,如0或者-12.data里構造多個元素,并且都為非法用戶uid1.返回status=-1,提示沒有結果2.返回status=-1,提示沒有結果功能3_輸入數據庫里不存在的用戶構造正確的url,設置正確的data參數,保證參數里的uid為數據庫里不存在的用戶,或者已經刪除用戶1.返回status=-1,提示沒有結果;功能4_輸入data參數為非整數字符1.構造url,data參數里填寫非整數的任意字符1.返回status=-12.提示參數錯誤客戶端正常功能測試用力:拍照模塊,其中對拍照、上傳相冊、美化等功能進行了測試用例設計,下圖給出拍照功能的用例設計,如圖44所示:圖SEQ圖\*ARABIC44拍照模塊測試用例設計登錄、注冊和啟動模塊,其中對登錄、注冊和啟動功能進行了用例設計,下圖給出登錄功能測試用例設計,如圖45所示:圖SEQ圖\*ARABIC45登錄功能測試用例聯調測試:聯調測試主要是正式將客戶端連接服務端進行最終測試,主要是用客戶端驗證基本功能和與服務端通訊是是否會產生問題。這部分并沒有測試用例設計,更具客戶端已經設計的測試用例來執行,并進行自動化壓力測試。6.5綜合測試結論服務端測試結論:性能指標:利用編程方式,進行并發訪問,測試時當前服務器承載秒壓為每秒400次請求,一下數據都是在機器各項性能指標平穩后所得到的的最終數據。測試機器硬件環境為CPU:Intel(R)Xeon(R)CPUE5-26200@2.00GHzMemTotal:132139976kBLinux版本:RedHatLinux()圖SEQ圖\*ARABIC46內存使用情況圖SEQ圖\*ARABIC47CPU使用情況以上兩張圖展示了模擬起壓后的內存和CPU使用情況,在一定時間內的穩定值,沖CPU使用情況上可以看出,CPU平均被占用50%,內存使用率為總量的30%左右。同時在該環境下,整個系統能夠保證正常提供服務,沒有明顯的延遲、數據丟失以及拒絕訪問的問題出現,其性能測試結論為通過。安全方面:由于服務器可能會受到DDoS攻擊即拒絕服務攻擊,對于該問題采用防火墻機制,設定一段時間間隔內只能接受同一個IP訪問請求有限。在模擬了相同IP每30秒請求超過40個時,系統防火墻會在一段時間內將其封禁為黑名單。使其不能夠在訪問服務。測試對該方面做了不同的臨界值請求,其訪問正常。同時對SQL注入攻擊,跨站腳本注入攻擊等都進行了測試,由于系統內有對關鍵字段做校驗以及,對關鍵字段做防注入處理,在測試時均沒有發現該風險。客戶端測試結論:對客戶端測試主要給出重要測試結論:1. 可用性:對所有設計的測試用例進行回歸便利,所有P0和P1的核心功能測試通過,不會出現崩潰問題,保證整個系統的主要功能可用性。非核心功能展示正常,系統狀態穩定。使用Mokney工具進行壓力測試后,在24小時內連續對應用施壓,沒有發現崩潰現象。2. 可靠性:測試的過程中使用抓包工具進行HTTP請求解析,對于關鍵敏感的參數采用加密方式進行處理,不會在包中被明文顯示。同時對異常操作,如斷網,來電和鎖屏異常情況的測試發現,客戶端系統完全可以正常運行,且不會影響手機其他功能使用。用戶體驗:在用戶的體驗方面,我們將內側包發給用戶測試群和內部測試小組,進行短期使用,其反饋結論上來看,主要問題是在于多機型適配問題,后期對應用進行了機型適配和兼容問題,已經將問題修復。經過上訴分析以及設計分最終完成了整個應用的設計和實現。6.6本章小結在本章我們首先討論了軟件質量的重要性以及測試的重要性,然后介紹了美圖娛樂軟件的測試環境,接著介紹了系統的測試方法,并細闡述了系統在開發中進行黑盒測試的方法和目的,接著詳細介紹了黑盒測試及功能測試各個模塊的測試目的、測試方法和測試結果。最后分析并總結了系統測試的結果。總結和展望隨著智能手機在人們生活中的普及,以及拍照數字化時代的到來,導致獲取圖片已經成為非常簡單的一件事。同時,因為圖片的視覺抒發能夠填補文字在感性上的表達的虧欠,圖片中所蘊含的大量信息也更加適合迅速的閱讀與了解,圖片在當今社會中已漸漸變成了不可或缺的一部分。同時,隨著傳播的頻繁,人們對圖像處理的需求也日漸增加,一款方便好用的美圖娛樂軟件是被市場和人們所需要的。本文以Android為系統平臺,設計和開發一款綜合性的美圖娛樂軟件,在調查用戶最常用幾個功能后,又添加了兩個功能作為本軟件的特色突圍點。從需求到實現到測試的過程,每一步都設計與實現都僅僅圍繞著用戶需求進行。本軟件是我獨立完成的,實現功能如下:圖像的獲取:完成調用系統相機進行直接拍照、和從相冊讀取已有照片的兩種圖像獲取功能。實現圖像處理的5種編輯方式,其中包括:濾鏡、調整、虛化、裁切和摳圖。調用系統保存接口,實現將圖片保存到本地和分享至軟件的功能。由于開發和實踐時間較短,盡管系統的總體功能全部實現,但不得不說,系統很多地方需要進行進一步完善和修改。第一,軟件在調用相冊時,整個流程采取調用Android自帶接口,會導致選取圖片后,編輯界面的標題欄變為系統接口,而不是自定義標題欄。雖然不影響使用,但在界面美觀上會大打折扣。第二,出于減少操作步驟的考慮,可以去掉“New”的選項,在用戶進入軟件時自動跳入相冊界面,并在其中增加拍照功能。使得用戶減少一次點擊,在交互上更方便和人性化。另外,再各個功能的細節上也有很多地方可以進行優化,如果可以開發出美顏功能,也將成為本應用的一個里程碑。參考文獻陳明宇.手機拍照及周邊軟件市場分析報告[EB/OL]./content/380656.shtml,2012-12-28智酷調查.數據揭秘中國圖片社交“真需求”[EB/OL]./p/hf6Hpi.html,2015-07-03酷傳.2015年度APP數據報告[EB/OL]./20160119/n435087763.shtml,2016-01-19酷傳.2014年APP行業年度數據報告[EB/OL]./archives/327088.html,2015-02-03守岳.2014年Q1中國手機攝影美化軟件市場監測報告[EB/OL]./content/201405/319.html,2014-05-08王鑫.揭秘中國圖片社交“真需求”[EB/OL]./original/archives/a092.html,2015-07-03愛範兒.你不知道的濾鏡真相:Instagram最多人用的濾鏡[EB/OL]./techorange/2015/05/28/filter/,2015-05-28楊文濤.分數傅里葉變換在數字圖像處理中的應用研究[D].華中科技大學,2007吳蘭蘭.基于數字圖像處理的玉米苗期田間雜草的識別研究[D].華中農業大學,2010陳炳權,劉宏立,孟凡斌.數字圖像處理技術的現狀及其發展方向[J].吉首大學學報(自然科學版),2009:2-13賀東霞,李竹林,王靜.淺談數字圖像處理的應用與發展趨勢[J].延安大學學報(自然科學版),2013:56-97李立芳.淺談數字圖像處理技術及應用[J].中國科技信息,2012:20-69宋曉東.數字圖像處理中分割方法的研究與實現[D].武漢理工大學,2003陶劍鋒.基于灰色系統理論的數字圖像處理算法研究[D].武漢理工大學,2004李磊.基于MATLABGUI的數字圖像處理系統設計[D].成都理工大學,2012郭斌.嵌入式系統課程輔助教學系統的設計[J].電腦與電信,2014,29(12A):1923-1927謝星.Android手機圖片管理軟件大比拼[J].計算機應用文摘,2012,29(12A):48-52楊澤波.基于Android的在線游戲控制器的設計與實現[J].電視技術,2015,29(12A):23-27Digitalimageprocessingofsectorialoscillationsforacousticallylevitateddropsandsurfacetensionmeasurement[J].ScienceChina(Physics,Mechanics&Astronomy),2010:260-265梁原.基于MATLAB的數字圖像處理系統研究[D].長春理工大學,2008.Digitalimageprocessingofsaturationfortwo-phaseflowinplanarporousmediamodel[J].WaterScienceandEngineering,2012:68-92朱珍德,倪驍慧,王偉,李雙蓓,趙杰,武沂泉.Dynamicexperimentalstudyonrockmeso-cracksgrowthbydigitalimageprocessingtechnique[J].JournalofCentralSouthUniversityofTechnology,2008:13-56岡薩雷斯,數字圖像處理(第二版)[M],北京:電子工業出版社,2002蘇光大,微機圖像處理系統[M],北京:清華大學出版社,2000鄧志勇,開放性圖像處理系統的設計思想[[J],現代計算機,2002,(11):234-236鄺國枝,卞靜,醫學圖像處理系統的設計與實現[[J],現代計算機,2005,5(12):56-59徐小良,劉陽,周滋,等,圖形化編程平臺的結構設計及實現[[J],計算機工程與應用,2001,37(4):4-

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論