日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代寫FIT2107、代做Python設計編程
代寫FIT2107、代做Python設計編程

時間:2024-10-16  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



FIT2107 - Software Quality and Testing
ASSIGNMENT 2 [40%]
White box testing and code analysis
Overview
For this assignment, your task is to design and document appropriate tests for a
software system using white box techniques, build a CI/CD pipeline to run your tests,
and report on the code quality and test coverage. In doing this you must only use
concepts that have been covered in FIT2107.
This assignment is an individual, open book task. Every student must complete and
submit their own work. The use of AI in any way is not permitted.
Submissions will be marked out of 40, and will form 40% of your final grade in FIT2107. A
late penalty of 5% per day will be applied, and after 7 days a mark of 0 will be given and
no feedback will be provided on the submission.
This assignment covers FIT2107 learning outcomes 1, 2, and 3.
Deliverables
You must submit the following evidence using the Assignment 2 submission page on
Moodle:
● Your tests
Compress your “tests” folder from “bat” to a zip named “tests.zip”.
● Task 6 and Task 9 documents
Convert both documents to PDF for submission, and do not rename them (i.e., you
should submit files named “task_6.pdf” and “task_9.pdf”).
● Task 3 control flow graph
Submit as “task_3.png”
Your grade will also be based on the commit history in your unit repository on gitlab.
SUBMISSION DUE: Friday Week 12, 11:55PM
1FIT2107 - Software Quality and Testing
Tasks
For this assignment you are continuing to test the Borrowing Administration Terminal
(BAT) used by Anything Anytime Library (AAL). However, now you will have access to
some of the BAT code. This will enable you to run additional tests on the system using
white box techniques.
The code you have been provided with is a redacted version of BAT. Each part of the
code has been commented to describe its purpose and intended logic. In addition to
the in-code documentation, you should note:
● It is assumed that a patron will never attempt to take out a loan for an item they
are already borrowing (e.g., borrow two copies of the same book).
● It is assumed that there are no patrons with the same name and age.
● It is assumed that there are no logic errors in the JSON data provided to BAT (e.g.,
duplicate IDs, loans which aren't reflected in the catalogue). If there are any
syntax errors in the data then BAT will not open.
● Changes to data are not saved until the "Quit" menu option is selected.
● All functionality to do with late fees has been removed, except the calculation of
discounts for the purpose of determining if a patron is allowed to borrow an item
or is not allowed due to fees owed.
● Ability to update training records has been removed.
● All analytics code (e.g., for generating overdue loans reports) has been removed.
● All user and catalogue data is fabricated.
2FIT2107 - Software Quality and Testing
Task 1: File Setup (Marked as part of development history modifier)
You should have the knowledge to complete this task after Week 1.
Download the assignment template (template.zip) from Moodle. Unzip the folder, and
copy all of the files into the “Assignment 2” folder in your unit repository. Add, commit,
and push the files.
Task 2: MC/DC (4 marks)
You should have the knowledge to complete this task after Week 7.
In the file “test_task_2.py” in the “tests” folder in “bat”, write tests for the method
“can_borrow_carpentry_tool” from the “business_logic.py” source file. Write the
minimum number of tests needed to reach 100% MC/DC for the condition on line 126. Do
not write any extra tests.
Document your tests in comments as shown in the week 7 answer guide for MC/DC.
Your documentation must:
● List the possible tests and their outcomes, numbering each test.
● List the optimal test sets.
● Clearly identify which optimal set you have chosen to implement.
● Clearly identify which test number is being tested by each test method.
Task 3: Path Coverage (5 marks)
You should have the knowledge to complete this task after Week 7.
Part A:
Draw a control flow graph for the method “can_use_makerspace” from the
“business_logic.py” source file. In your graph, show “else” explicitly as a node. Save your
graph in the “Assignment 2” folder in your repository as “task_3.png”.
Part B:
In the file “test_task_3.py” in the “tests” folder in “bat”, write tests for the method
“can_use_makerspace” (from the “business_logic.py” source file). Write the minimum
number of tests needed to reach 100% path coverage. Do not write any extra tests.
Document your tests in comments as shown in the week 7 answer guide for path
coverage. Your documentation must:
3FIT2107 - Software Quality and Testing
● List the feasible paths, number each.
● Clearly identify which path is being tested by each test method.
Task 4: Mocking (5 marks)
You should have the knowledge to complete this task after Week 8.
In the file “test_task_4.py” in the “tests” folder in “bat”, write tests for the method
“_main_menu” from the “bat_ui” source file. Use the method “get_current_screen” to
verify that the UI has moved to the correct screen. Do not write any extra tests.
Make sure you test that:
● All valid inputs cause the UI to move to the correct screen.
● The user is repeatedly asked for input until a valid input is given.
Task 5: Coverage (10 marks)
You should have the knowledge to complete this task after Week 8.
In the “tests” folder in “bat”, write tests for any of the code in BAT you like until you reach:
● At least **% statement coverage.
● At least 80% branch coverage.
All tests written for this assignment (i.e., not just for Task 5) count towards coverage.
Add as many test files to the “tests” folder as you need, but do not add tests to the
“test_task_X.py” files, and do not rename any of the “test_task_X.py” files. Part of your
grade for this task will be based on your ability to write appropriate tests, and organise
them into appropriately named test files. Make sure you follow all guidelines given in
this unit.
Note: to get just branch coverage, run the terminal command “coverage json” after a
“coverage run” command. This will generate a file (“coverage.json”). In that file, under
"totals" there'll be "covered_branches" and "missing_branches".
Task 6: Find the Bugs (9 marks)
You should have the knowledge to complete this task after Week 8.
Part A:
Using any technique or combination of techniques you like, find 3 bugs in BAT.
Part B:
In “task_6.docx” in the assignment template, write a bug report for each of the three
bugs you found.
Task 7: CI (2 marks)
You should have the knowledge to complete this task after Week 9.
4FIT2107 - Software Quality and Testing
Configure gitlab to automatically run all of the tests you have written for BAT. Ensure
that only the BAT tests run, and the output is verbose. Gitlab should show that all your
tests were run, and all your tests pass.
Task 8: Static Analysis (2 marks)
You should have the knowledge to complete this task after Week 9.
Update your gitlab configuration to also automatically run the “pylint” and
“pycodestyle” static analysis tools on the BAT source code and tests. Gitlab should
show that all your tests were run and pass, but the code does not have to pass linting.
Task 9: Software Metrics (3 marks)
You should have the knowledge to complete this task after Week 10.
As mentioned, you have been given a redacted version of the BAT code. The real
version of BAT has 9842 lines of code.
In “task_9.docx” in the assignment template, explain (including your working) how
many defects you would expect the real version of BAT to contain. Your answer should
not be longer than one page.
Assessment Criteria
This assignment will be marked out of 40, and will form 40% of your final grade in
FIT2107. A late penalty of 5% per day will be applied, and after 7 days a mark of 0 will be
given and no feedback will be provided on the submission.
● Development history
After your submission is marked, a modifier will be applied to your score based on
your development history. The lowest possible modifier is 0.5, and the highest
possible modifier is 1.0 (i.e., no grade reduction). Your final grade will be your
original grade multiplied by this modifier. To get a modifier of 1.0 you need to:
○ Have all the files from the assignment template in the “Assignment 2”
folder in your unit repository, and not in a sub-folder.
○ Make at least 11 commits total.
○ Make at least 2 commits of each file in the template.
○ Use meaningful and concise commit messages.
● Appropriate use of unit concepts
The marker will verify that you have used only concepts covered in FIT2107.
● Correctness
The marker will verify the correctness of your answers.
● Clarity
The marker will verify whether your answers use clear, specific, and appropriate
examples. This is particularly important when you are writing justifications.
5FIT2107 - Software Quality and Testing
● Consistency
The marker will verify whether related answers are consistent with each other.
● Good coding practice
The marker will verify whether you have followed good coding practice for writing
tests in python, as demonstrated in this unit.
6

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp

掃一掃在手機打開當前頁
  • 上一篇: 代寫ICT50220、C++/Java程序語言代做
  • 下一篇:CSCI1540代寫、代做C++設計編程
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
    合肥機場巴士2號線
    合肥機場巴士2號線
    合肥機場巴士1號線
    合肥機場巴士1號線
  • 短信驗證碼 酒店vi設計 deepseek 幣安下載 AI生圖 AI寫作 aippt AI生成PPT 阿里商辦

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

      <em id="rw4ev"></em>

        <tr id="rw4ev"></tr>

        <nav id="rw4ev"></nav>
        <strike id="rw4ev"><pre id="rw4ev"></pre></strike>
        欧美伊人久久| 亚洲一区免费| 精品999成人| 亚洲精品一区二区网址| 欧美高清视频一区二区三区在线观看| 久久综合狠狠综合久久综青草| 99re视频这里只有精品| 米奇777在线欧美播放| 欧美成人在线免费视频| 欧美激情综合亚洲一二区| 久久成人18免费网站| 欧美不卡一区| 欧美深夜影院| 亚洲国产高清aⅴ视频| 一区二区高清| 亚洲第一久久影院| 午夜在线精品| 欧美三级韩国三级日本三斤| 欧美视频在线一区二区三区| 亚洲国产精品999| 国产精品国产一区二区| 欧美性猛交一区二区三区精品| 亚洲欧美中文日韩v在线观看| 在线视频日韩精品| 欧美日韩高清不卡| 麻豆精品传媒视频| 欧美日韩1区| 六十路精品视频| 性欧美暴力猛交69hd| 国产日韩精品在线| 99v久久综合狠狠综合久久| 校园春色国产精品| 亚洲第一狼人社区| 欧美午夜精品久久久久免费视| 久久精品一区| 亚洲国产一区二区视频| 美女黄色成人网| 免费观看久久久4p| 欧美一区二区黄色| 国语自产精品视频在线看8查询8| 欧美亚洲日本网站| 99亚洲伊人久久精品影院红桃| 亚洲欧美国产毛片在线| av成人激情| 国产精品国产福利国产秒拍| 国产一区二区精品久久91| 国产一区二区高清视频| 欧美高清视频一二三区| 国产精品va在线播放我和闺蜜| 欧美极品色图| 亚洲精品久久久蜜桃| 在线观看免费视频综合| 尤妮丝一区二区裸体视频| 欧美三级小说| 欧美一区二区| 欧美一级大片在线免费观看| 欧美黑人一区二区三区| 国产精品国产一区二区| 亚洲精品视频在线观看网站| 在线成人激情| 免费试看一区| 欧美喷潮久久久xxxxx| 一本久久青青| 亚洲黄网站在线观看| 国产美女精品在线| 久久精品在线观看| 欧美成人免费va影院高清| 亚洲成色999久久网站| 亚洲欧美日韩国产综合| 亚洲福利av| 一二美女精品欧洲| 1000部国产精品成人观看| 日韩亚洲欧美一区二区三区| 久久久久久9999| 久久先锋资源| 欧美福利电影在线观看| 国产精品嫩草久久久久| 亚洲黄色免费网站| 欧美啪啪一区| 性色av香蕉一区二区| 亚洲亚洲精品在线观看| 亚洲高清在线观看| 一区二区久久久久久| 欧美a级片一区| 99国产精品视频免费观看| 国产午夜精品视频免费不卡69堂| 好吊日精品视频| 国内自拍视频一区二区三区| 国产日韩欧美综合在线| 一本色道久久综合狠狠躁篇怎么玩| 久久综合色天天久久综合图片| 免费在线观看一区二区| 久久在线观看视频| 亚洲一区3d动漫同人无遮挡| 亚洲视频 欧洲视频| 亚洲一级片在线看| 亚洲伦理在线观看| 亚洲高清不卡av| 欧美激情一区二区在线| 久久久久久久综合狠狠综合| 久久人91精品久久久久久不卡| 国产日韩一区二区三区在线| 国产精品国产自产拍高清av王其| 欧美视频一区二区三区| 国产一在线精品一区在线观看| 亚洲毛片在线观看.| 欧美紧缚bdsm在线视频| 一本久道久久综合中文字幕| 美女主播精品视频一二三四| 亚洲一区区二区| 99ri日韩精品视频| 欧美一区激情视频在线观看| 日韩亚洲视频在线| 欧美午夜久久| 国产精品私拍pans大尺度在线| 快射av在线播放一区| 欧美日韩一区二区高清| 亚洲麻豆国产自偷在线| 国产日韩av高清| 午夜精品久久久久久久久久久久久| 中国成人亚色综合网站| av成人黄色| 欧美一区2区三区4区公司二百| 欧美日韩免费在线观看| 久久国产精品99国产| 国产精品久久久久秋霞鲁丝| 香蕉久久夜色精品国产使用方法| 欧美三级资源在线| 欧美大片免费观看在线观看网站推荐| 国产日韩一区欧美| 亚洲美女尤物影院| 国模精品一区二区三区色天香| 亚洲国产99精品国自产| 国产精品入口福利| 男人天堂欧美日韩| 亚洲美女淫视频| 宅男噜噜噜66国产日韩在线观看| 久久本道综合色狠狠五月| 一区二区三区欧美在线| 六月婷婷一区| 久久成人资源| 久久久久综合| 国产精品二区影院| 亚洲欧洲一二三| 日韩网站在线| 久久婷婷国产综合国色天香| 国产日韩一区二区三区在线| 久久精品av麻豆的观看方式| 国产精品久久久久久久浪潮网站| 农夫在线精品视频免费观看| 国产日韩欧美高清免费| 一区二区三区久久精品| 亚洲精品日韩久久| 国产精品白丝jk黑袜喷水| 国产麻豆精品久久一二三| 亚洲欧美在线另类| 老鸭窝亚洲一区二区三区| 国产亚洲人成a一在线v站| 性欧美18~19sex高清播放| 一区二区日本视频| 久久久久一本一区二区青青蜜月| 国产欧美一区二区色老头| 一本到12不卡视频在线dvd| avtt综合网|