https://github.com/microverse-fullstack-program/ruby-tdd-exercise
https://github.com/microverse-fullstack-program/ruby-tdd-exercise
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/microverse-fullstack-program/ruby-tdd-exercise
- Owner: Microverse-Fullstack-Program
- License: mit
- Created: 2023-06-02T06:32:18.000Z (almost 2 years ago)
- Default Branch: dev
- Last Pushed: 2023-06-02T20:04:29.000Z (almost 2 years ago)
- Last Synced: 2025-01-11T18:41:34.052Z (3 months ago)
- Language: Ruby
- Size: 14.6 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Test Driven Design/TDD
# 📗 Table of Contents
- [📗 Table of Contents](#-table-of-contents)
- [📖 OOP School Library ](#-oop-school-library-)
- [🛠 Built With ](#-built-with-)
- [Tech Stack ](#tech-stack-)
- [Key Features ](#key-features-)
- [🚀 Live Demo ](#-live-demo-)
- [💻 Getting Started ](#-getting-started-)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [Deployment](#deployment)
- [👥 Authors ](#-authors-)
- [🔭 Future Features ](#-future-features-)
- [🤝 Contributing ](#-contributing-)
- [⭐️ Show your support ](#️-show-your-support-)
- [🙏 Acknowledgments ](#-acknowledgments-)
- [❓ FAQ ](#-faq-)
- [📝 License ](#-license-)# 📖 est Driven Design/TDD in Ruby
**Test Driven Design/TDD Project** Is about a software development approach that emphasizes writing tests before writing the actual code. The process begins by creating a test that defines the desired behavior of a specific piece of functionality. Initially, the test will fail since the corresponding code does not exist. Developers then implement the code necessary to make the test pass, and refactor it as needed to improve its design and maintainability. The cycle of writing tests, implementing code, and refactoring is repeated for each desired feature or change. TDD promotes a systematic and incremental development process that ensures code is thoroughly tested and meets the specified requirements.
> The tech stack in this project includes.
Ruby
Rspec
- **Automated tests:** The project will have a comprehensive suite of automated tests covering different aspects of the codebase. These tests are executed regularly to catch any regressions or issues that may arise during development.
- **Incremental development:** TDD promotes an incremental approach where functionality is implemented in small increments. Each increment is driven by a failing test, ensuring that new code is only added to satisfy specific requirements.
- **Clear specification:** Tests serve as a specification for the desired behavior of the code. They act as living documentation, providing clear examples of how the code should behave in different scenarios.
- **Improved code quality:** Writing tests before code encourages developers to think about design, modularity, and the desired API of the code. This often leads to more maintainable and loosely coupled code.
- **Refactoring support:** TDD encourages regular refactoring to improve code quality without introducing bugs. With a suite of tests in place, developers can confidently refactor their code, knowing that any regression issues will be caught by the tests.
- Not available
To get a local copy up and running, follow these steps.
### Prerequisites
In order to run this project you need: **Ruby and Rspec installed**.
```sh
gem install ruby
```
### Setup
- Clone [this repository](https://github.com/Microverse-Fullstack-Program/ruby-tdd-exercise) to your desired folder.
- Alternatively, you can download the zip file of your project by clicking on the Code button on the right side of your project page and clicking on Download ZIP
### Install
Install this project with:
```sh
cd my-project
gem install ruby
gem install rspec
```
### Usage
To run the project, execute the following command:
- Install Ruby.
- Install Ruby Gem.
- Install Rspec
### Run tests
To run tests, run the following command: **Not available**.
### Deployment
You can deploy this project using: **Not available**.
👤 **Chere Lemma**
- GitHub: [@githubhandle](https://github.com/cherelemma)
- Twitter: [@twitterhandle](https://twitter.com/Chere21271613)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/chere-lemma27211613)
👤 **Henry Omondi**
- GitHub: [@githubhandle](https://github.com/Odongo006)
- Twitter: [@twitterhandle](twitter.com/HenryOdongo007)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/henry-odongo/)
In the future work,
- [ ] **Add more TDD examples**
Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](https://github.com/Microverse-Fullstack-Program/ruby-tdd-exercise/issues).
If you like this project give a ⭐️.
I would like to thank [Microverseinc: TDD project requirments
](https://github.com/microverseinc/curriculum-transversal-skills/blob/main/testing/tdd_project.md) for the project requirment.
- **For what purpose this project can be used**
- The project can be used to learn and get hand on exprience on TDD coding in RUBY.
This project is [MIT](./LICENSE) licensed.