Code Monkey home page Code Monkey logo

ece444-f2023-lab5's Introduction

Filip Kostic

ECE444-F2023-Lab5

This repository is a clone of https://github.com/mjhea0/flaskr-tdd

Part1

The example has been replicated

Part2

For part 2, I created the test_invalid_login, test_register, test_valid_login tests to test the ability of our backend api to sucessfully process login/register requests.

https://github.com/ECE444-2023Fall/project-1-web-application-design-group22-premium-potatoes/blob/1769da9cc7c6baf81d6411dd3396d38773a71b50/api/api_tests/app_test.py#L26C4-L26C4

https://github.com/ECE444-2023Fall/project-1-web-application-design-group22-premium-potatoes/blob/1769da9cc7c6baf81d6411dd3396d38773a71b50/api/api_tests/app_test.py#L36

https://github.com/ECE444-2023Fall/project-1-web-application-design-group22-premium-potatoes/blob/1769da9cc7c6baf81d6411dd3396d38773a71b50/api/api_tests/app_test.py#L48

Part3

The advantages of using TDD are that the testing of features is implemented before the development of the feature. This ensures that testing is not implemented as an afterthought, potentially at a much later time than the feature was originally created. TDD also helps to promote good software practices such as keeping the codebase as modular as possible so that many unit tests can test small pieces of a feature. TDD can also be helpful for debugging as other developers can quickly figure out which parts of the program are failing by looking at the code coresponding to the feature that is failing. In a non TDD testing framework, it might be more difficult to locate the source of the problem as the implementation of the relevant feature was not designed based on its ability to be tested.

The disadvantages of TDD are that it can slow down the development process. Since tests are designed before the relevant feature is, potentially valuable time is lost by creating many test cases which can be problematic if the project timeline is small. Another issue with TDD is that the developer might realize that some of their tests will not be helpful during the development of the relevant feature. It can be difficult to come up with a testing harness for a complicated feature for which the developer has not given much thought about its implementation. TDD also has the risk of programmers creating too many test cases. The developer might think an aspect of the feature must be tested in insolation during the creation of the testing suite and then realize during the implementation that it is not necessary to test that aspect in isolation.

ece444-f2023-lab5's People

Contributors

coskos-ops avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.