Font Size: a A A

Design And Implementation Of The Crowdsourced Testing Task Assignment Techniques Based On Knowledge Graph

Posted on:2022-10-30Degree:MasterType:Thesis
Country:ChinaCandidate:M Y DuanFull Text:PDF
GTID:2518306725483954Subject:Master of Engineering
Abstract/Summary:PDF Full Text Request
Crowdsourcing testing can recruit a large number of testing workers to test the software in a short time,which solves the problems of single tester composition,long cycle and high cost in the traditional testing process.However,the non professional and uncertain testers in crowdsourcing mode will also lead to the problems of uneven test report quality,substandard test requirement coverage,large number of repeated bug reports and low efficiency.Therefore,this paper designs a ”crowdsourced testing task assignment technique based on knowledge graph”,trying to make full use of the individual advantages and group wisdom of crowdsourced workers in crowd testing through personalized task assignment,improve the above problems,and improve the quality of test reports and test completion efficiency.The technique includes three modules: 1)knowledge graph data acquisition module: the concept of ”collaborative crowdsourcing test” is introduced,and a complete crowdsourcing report submission platform is built to obtain the required data of knowledge graph.On this platform,crowdsourcing workers can receive three-level page test tasks,and when filling in bug reports,they can see similar bug reports and make changes based on them to help improve the quality of reports and reduce the number of duplicate reports.Crowdsourcing workers also need to perform audit tasks,that is,to review other people's bug reports by means of likes and dislikes,and to promote the generation of final deliverable reports.2)Knowledge graph feature learning module: the system builds an internal knowledge graph of the crowdsourcing field based on the data in the platform,and combines the historical task records of crowdsourcing workers as input,uses the machine learning model to get the crowdsourcing workers' preference for specific tasks,and integrates the three-level page coverage and bug like status,assign test tasks and audit tasks to crowdsourcing workers.3)Knowledge graph task assignment module: visualizing the task assign results and current task execution to crowdsourcing workers in order to improve the coverage of test requirements and overall test efficiency.In terms of implementation techniques,the front end of the system uses Angular2 framework,and the back-end platform uses the classic MVC architecture of Spring Boot framework.Hot data is cached in memory with Redis to improve the response speed.Mongo DB database,the representative of No SQL database,is used for data persistence,which is conducive to improving the processing speed and flexibility of system data.The feature learning module is built by Python script,which can easily interact with Neo4 j graph database which stores entity relationship data of knowledge graph.Also,the system uses Nginx for load balancing and Docker containerization technique for independent deployment of all modules to ensure the robustness and portability of each part of the system.The function test and performance test of the system are carried out at the same time,which proves that the system meets the use requirements.Meanwhile,we compare the quantity and quality of bug reports in a crowdsourcing test between the task assignment system based on knowledge graph and the system based on collaborative filtering,which proves the effectiveness of our task assignment technique.
Keywords/Search Tags:Knowledge Graph, Self-Taught Learning, Crowd-sourcing Test, Task Assignment
PDF Full Text Request
Related items