Skip to content

Commit f2624be

Browse files
committed
feat: final revamp
Signed-off-by: Animesh Pathak <[email protected]>
1 parent c57fd92 commit f2624be

File tree

7 files changed

+275
-16
lines changed

7 files changed

+275
-16
lines changed

src/css/custom.css

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/* Hotfix: Changed primary color to black to resolve conflict with Docusaurus' default primary orange after disabling Tailwind preflight CSS. Added font size and line height adjustments to compensate for the removal of Tailwind preflight. */
77

88
/* --ifm-color-primary-lighter: #ffb575; */
9-
font-size:18px;
9+
font-size:14px;
1010
line-height: 1.6;
1111
--ifm-color-primary: #000;
1212
--ifm-color-primary-lighter: #FFF;

versioned_docs/version-2.0.0/concepts/reference/glossary/behaviour-driven-development.md

+14-5
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,24 @@
11
---
22
id: behaviour-driven-development
3-
title: What is Behavior Driven Development (BDD)?
3+
title: "Behavior Driven Development : Beginner's Guide to Collaboration"
44
sidebar_label: Behaviour Driven Development
5-
description: Collaborative approach aligning software development with business goals through clear, readable test scenarios.
5+
description: Learn how BDD bridges the gap between developers, testers, and business stakeholders with practical examples, tools, and techniques.
6+
seoTitle: "Behavior Driven Development : Beginner's Guide to Collaboration"
7+
seoDescription: Learn how BDD bridges the gap between developers, testers, and business stakeholders with practical examples, tools, and techniques.
68
tags:
79
- explanation
810
- Glossary
911
keywords:
1012
- API
1113
- BDD
1214
- Behavior Driven Development
15+
- Behavior Driven Development Tools
16+
- BDD Testing Tools
17+
- Behavior Driven Testing
18+
- Test Automation
19+
- Software Testing
20+
- Software Testing Best Practices
21+
- Test Automation
1322
---
1423

1524
Behavior-driven development (BDD) is an Agile software development methodology that encourages collaboration between developers, testers, and business stakeholders. BDD is based on the idea that the best way to ensure that software meets the needs of its users is to write tests that describe the desired behavior of the software in plain language.
@@ -136,17 +145,17 @@ One of the core practices in BDD is the creation of automated tests based on the
136145
137146
Here are some of the popular BDD automation tools:
138147
139-
1. **Cucumber:** [Cucumber](https://github.com/cucumber/cucumber-js) is a free and open-source BDD tool that uses the Gherkin syntax for writing test cases in plain English. It can be programmed in several languages, including Java, Ruby, and JavaScript.
148+
1. **Cucumber:** Cucumber is a free and open-source BDD tool that uses the Gherkin syntax for writing test cases in plain English. It can be programmed in several languages, including Java, Ruby, and JavaScript. Learn how to implement BDD with tools like Cucumber - [read now](https://keploy.io/blog/community/bdd-testing-with-cucumber)!
140149
141150
2. **Behave:** Behave is a behavior-driven testing tool written in Python that supports the Gherkin syntax and can be used in tandem with other testing frameworks like Pytest and Unittest.
142151
143152
3. **JBehave:** JBehave is a Gherkin-based, Java-based BDD tool that supports many testing frameworks, including JUnit and TestNG.
144153
145-
4. **SpecFlow:** [SpecFlow](https://github.com/SpecFlowOSS/SpecFlow) is a BDD tool that interfaces with Microsoft Studio and other .NET tools and employs the Gherkin syntax for writing specifications. It can be programmed in C# and Visual Basic, among other languages.
154+
4. **SpecFlow:** SpecFlowis a BDD tool that interfaces with Microsoft Studio and other .NET tools and employs the Gherkin syntax for writing specifications. It can be programmed in C# and Visual Basic, among other languages.
146155
147156
5. **Gauge:** Gauge is an open-source BDD tool that employs a markdown-based syntax to describe tests. It can be programmed in Java, Ruby, and Python, among others.
148157
149-
6. **Reqnroll:** [Reqnroll](https://github.com/reqnroll/Reqnroll) is an open-source Cucumber-style BDD test automation framework for .NET.
158+
6. **Reqnroll:** Reqnroll is an open-source Cucumber-style BDD test automation framework for .NET.
150159
151160
These tools can help to streamline the testing process and improve communication between developers, testers, and stakeholders. This can help to ensure that the software meets the needs of the business and is of high quality.
152161

versioned_docs/version-2.0.0/concepts/reference/glossary/unit-test-automation.md

+30-7
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,38 @@
11
---
22
id: unit-test-automation
3-
title: What is Unit Test Automation?
4-
seoTitle: "Understanding Unit Test Automation: A Comprehensive Guide"
5-
seoDescription: "Discover what unit test automation is, its benefits, best practices, and how it streamlines software development for better quality."
3+
title: "Master Unit Test Automation: A Developer’s Essential Guide"
4+
seoTitle: "Master Unit Test Automation: A Developer’s Essential Guide"
5+
seoDescription: Discover how to simplify testing workflows with our expert guide to unit test automation. Tools, benefits, and best practices all in one place!
66
sidebar_label: Unit Test Automation
7-
description: Simplify Your Testing Workflow with Unit Test Automation. Streamline processes for efficient and effective software testing.
7+
description: Discover how to simplify testing workflows with our expert guide to unit test automation. Tools, benefits, and best practices all in one place!
88
tags:
99
- explanation
1010
- Glossary
1111
keywords:
1212
- API
13+
- Unit testing tools
14+
- Test automation
15+
- Automated testing frameworks
16+
- Unit test best practices
17+
- Continuous integration
18+
- Test-driven development (TDD)
19+
- Software testing
20+
- Code quality assurance
21+
- Automated testing benefits
22+
- Unit testing examples
23+
- Python unit tests
24+
- Java unit testing
25+
- Unit testing frameworks comparison
26+
- Mock testing
27+
- Code reliability
28+
- CI/CD testing automation
29+
- Unit test automation for developers
30+
- Unit testing in software development
31+
- Automated test scripts
32+
- Bug detection through unit testing
33+
- Software development testing tools
34+
- ai testing agent
35+
- opensource testing agent
1336
---
1437

1538
Automating Unit Test is the practice of using automated tools and scripts to execute a set of predefined tests on individual units of code. These tests verify that each unit functions as intended, isolating and validating specific functionalities in an automated and repeatable manner.
@@ -94,11 +117,11 @@ Integrate your unit tests into your CI/CD pipeline to ensure they run automatica
94117

95118
- **Ignoring Test Failures**: Treat failing tests as a critical issue rather than a minor inconvenience. Investigate and fix them promptly to maintain the integrity of your code.
96119

97-
## What are some unit test automation tools?
120+
## Best Tools for Automated Unit Testing
98121

99122
There are many unit testing tools available for a wide range of languages and environments. Some popular tools include:
100123

101-
### Keploy
124+
### How to Use Keploy for Unit Testing
102125

103126
Keploy offers a one-click unit test generation tool that streamlines the testing process for developers. Instead of spending time writing test cases from scratch, you can generate them instantly, allowing you to focus on coding and delivering new features.
104127

@@ -109,7 +132,7 @@ Keploy offers a one-click unit test generation tool that streamlines the testing
109132
- **Focus on Quality**: Spend more time writing high-quality code while ensuring thorough validation.
110133
![Keploy](../../../../../static/img/glossary/keploy_VS.png)
111134

112-
Get started by downloading the tool from the [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=Keploy.keployio) and boost your development workflow today!
135+
Learn how to automate unit tests with these tools - [click to explore](https://keploy.io/blog/community/boost-unit-test-efficiency-using-ai-powered-extensions-for-vs-code)!
113136

114137
### pytest (Python)
115138

versioned_docs/version-2.0.0/concepts/reference/glossary/unit-testing.md

+24
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,30 @@ keywords:
1313
- software testing
1414
- e2e testing
1515
- integration testing
16+
- automated unit testing
17+
- unit test automation tools
18+
- test case generation
19+
- test-driven development
20+
- debugging tools for testing
21+
- JUnit integration
22+
- PHPUnit testing
23+
- PyTest unit tests
24+
- Selenium testing
25+
- test case validation
26+
- dynamic test cases
27+
- unit testing frameworks
28+
- Keploy test automation
29+
- continuous integration testing
30+
- automated testing for developers
31+
- bug detection in unit tests
32+
- test automation best practices
33+
- software quality assurance
34+
- automated test debugging
35+
- unit testing benefits
36+
- test coverage tools
37+
- CI/CD and testing
38+
- ai testing agent
39+
- opensource testing agent
1640
---
1741

1842
## What is Unit Testing?
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,202 @@
1+
---
2+
id: errors
3+
title: Common Errors in Keploy
4+
sidebar_label: Common Errors
5+
tags:
6+
- explanation
7+
- faq
8+
---
9+
10+
Let's check some of the common errors that you might encounter while working with Keploy!
11+
12+
[](https://camo.githubusercontent.com/74cbc79070c04e7077cfd86981c110678fe434e9269ea8f52eafb37b781cfb4a/68747470733a2f2f646f63732e6b65706c6f792e696f2f696d672f6b65706c6f792d6c6f676f2d6461726b2e7376673f733d32303026763d34)
13+
14+
### 1. Dependency Not Found Error
15+
16+
#### Description:
17+
18+
This error occurs when Keploy cannot locate or access a required dependency, such as a database or external service.
19+
20+
#### Possible Cause:
21+
22+
- The dependency may not be running or is incorrectly configured.
23+
- Networking issues may be preventing Keploy from connecting to external dependencies.
24+
25+
#### Solution:
26+
27+
- Verify that all required services (e.g., databases, third-party APIs) are active and accessible.
28+
- Check the environment variables or configuration files to confirm the correct host and port details.
29+
- Use network diagnostic tools (e.g., ping, traceroute) to identify connectivity issues.
30+
31+
### 2. Unable to Record API Calls
32+
33+
#### Description:
34+
35+
Keploy fails to record incoming API traffic, meaning no tests are generated.
36+
37+
#### Possible Cause:
38+
39+
- Incorrect integration with the application.
40+
- Keploy may not be correctly started with the application, or the SDK is not configured properly.
41+
- The application may not be making API calls that are recognizable by Keploy.
42+
43+
#### Solution:
44+
45+
- Double-check the integration guide for the programming language you’re using.
46+
- Ensure that Keploy is properly hooked into the API layer.
47+
- Check Keploy logs for any missed or skipped requests.
48+
49+
### 3. Test Replay Failure
50+
51+
#### Description:
52+
53+
Keploy is unable to replay recorded API requests.
54+
55+
#### Possible Cause:
56+
57+
- External services or databases may be in a different state than they were during recording.
58+
- Non-deterministic values like timestamps, UUIDs, or random values are causing failures.
59+
60+
#### Solution:
61+
62+
- Leverage Keploy’s mocking capabilities to simulate external services and databases.
63+
- Use configurations to handle or exclude non-deterministic values for consistent comparisons.
64+
- Regularly reset the database state to match the conditions during recording.
65+
66+
### 4. Response Mismatch Error
67+
68+
#### Description:
69+
70+
When Keploy replays API calls, it detects a mismatch between the recorded response and the current response.
71+
72+
#### Possible Cause:
73+
74+
- The application’s behavior has changed, leading to different responses.
75+
- Changes in the response format, status codes, or headers that weren’t present during recording.
76+
77+
#### Solution:
78+
79+
- Review the application changes and determine if the mismatch is expected (e.g., new features).
80+
- If the change is acceptable, update the test baseline to reflect the new behavior.
81+
- Use Keploy’s flexible comparison options to ignore certain fields or values (like timestamps or version numbers).
82+
83+
### 5. Incorrect Test Generation
84+
85+
#### Description:
86+
87+
Keploy generates tests that don’t properly reflect the API interactions.
88+
89+
#### Possible Cause:
90+
91+
- The API interaction may be too complex or involve custom logic that Keploy cannot automatically handle.
92+
- API parameters may be missing or misinterpreted during recording.
93+
94+
#### Solution:
95+
96+
- Review the recorded test cases for correctness.
97+
- Manually adjust the generated tests to include missing or misinterpreted parameters.
98+
- Make use of Keploy’s API to refine the recording process if necessary.
99+
100+
### 6. Database Connection Error during Test Replay
101+
102+
#### Description:
103+
104+
Keploy cannot connect to the database or other external systems during the replay of tests.
105+
106+
#### Possible Cause:
107+
108+
- The test environment may not have access to the same database as the original recording.
109+
- Database credentials or host information could be incorrect or missing in the test environment.
110+
111+
#### Solution:
112+
113+
- Mirror the test environment configuration with the recording setup.
114+
- Use database mocks or stubs for isolated testing.
115+
- Double-check connection strings, credentials, and database availability.
116+
117+
### 7. Missing or Invalid Configuration Error
118+
119+
#### Description:
120+
121+
Keploy cannot find a valid configuration file or encounters errors in the configuration.
122+
123+
#### Possible Cause:
124+
125+
- The Keploy configuration file (keploy.yaml or similar) is missing or contains invalid values.
126+
- Environment variables required by Keploy may not be set.
127+
128+
#### Solution:
129+
130+
- Ensure the configuration file exists and follows the correct format.
131+
- Populate all required fields with valid values.
132+
- Check that environment variables are properly set.
133+
134+
### 8. Timeout Errors
135+
136+
#### Description:
137+
138+
Keploy times out while recording or replaying API calls.
139+
140+
#### Possible Cause:
141+
142+
- Long-running API requests or slow external dependencies can cause timeout issues.
143+
- Keploy may have low timeout settings for API calls.
144+
145+
#### Solution:
146+
147+
- Increase timeout settings in the Keploy configuration.
148+
- Identify and optimize slow-performing APIs or dependencies.
149+
- Use monitoring tools to analyze API performance.
150+
151+
### 9. Insufficient Permissions
152+
153+
#### Description:
154+
155+
Keploy fails due to insufficient permissions when accessing files, networks, or other resources.
156+
157+
#### Possible Cause:
158+
159+
The user or service running Keploy may not have sufficient permissions to access resources like databases, APIs, or file systems.
160+
161+
#### Solution:
162+
163+
- Ensure that the user or service running Keploy has the necessary permissions.
164+
- Review system permissions and provide the required access rights for Keploy to function properly.
165+
166+
### 10. Version Compatibility Issues
167+
168+
#### Description:
169+
170+
Errors occur because of version mismatches between Keploy, its dependencies, or the application it’s testing.
171+
172+
#### Possible Cause:
173+
174+
- Using incompatible versions of Keploy or related SDKs with your application.
175+
- Dependencies of Keploy (e.g., for mocking or replaying) may have updated and broken compatibility.
176+
177+
#### Solution:
178+
179+
- Verify version compatibility for Keploy and its SDKs.
180+
- Consult Keploy documentation or release notes for known issues.
181+
- Use version pinning to maintain a stable environment.
182+
183+
### 11. Unsupported Protocol or API
184+
185+
#### Description:
186+
187+
Keploy does not support the protocol or API structure you are using (e.g., gRPC, SOAP, etc.).
188+
189+
#### Possible Cause:
190+
191+
- The application might use an API or protocol that Keploy doesn’t yet support (e.g., WebSocket, gRPC).
192+
193+
#### Solution:
194+
195+
- Confirm the supported protocols (currently HTTP/REST and GraphQL).
196+
- Consider alternative tools or frameworks for unsupported protocols.
197+
198+
If you’re still encountering issues after trying these solutions, feel free to reach out to the Keploy team or consult the community forums for additional support. Happy testing!
199+
200+
import GetSupport from '../concepts/support.md'
201+
202+
<GetSupport/>

versioned_docs/version-2.0.0/keploy-explained/mac-linux.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
id: mac-linux
33
title: "Running Keploy Natively on MacOS by setting up a linux env"
4-
sidebar_label: Keploy on MacOS native
4+
sidebar_label: MacOS Native
55
---
66

77
# Running Keploy Natively on MacOS by setting up a linux env

versioned_sidebars/version-2.0.0-sidebars.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
"type": "category",
4646
"label": "Quickstart Guide",
4747
"collapsible": true,
48-
"collapsed": true,
48+
"collapsed": false,
4949
"items": [
5050
{
5151
"type": "category",
@@ -163,7 +163,8 @@
163163
"collapsible": true,
164164
"collapsed": true,
165165
"items": [
166-
"keploy-explained/faq"
166+
"keploy-explained/faq",
167+
"keploy-explained/errors"
167168
]
168169
}
169170
],

0 commit comments

Comments
 (0)