Skip to content

Commit

Permalink
fix(website): 🐛 fixing issues in the documentations (#902)
Browse files Browse the repository at this point in the history
  • Loading branch information
WasiqB authored Oct 3, 2024
1 parent d63f722 commit 262f2b4
Show file tree
Hide file tree
Showing 8 changed files with 367 additions and 322 deletions.
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,27 @@

<br />

## 🖱️ One command Boyka project setup

Install [Boyka command line assistant](/~https://github.com/BoykaFramework/boyka-cli) by running the following command:

```shell
npm i -g @boykaframework/boyka-cli
```

Once it is installed, run the following command to setup Boyka project:

```shell
boyka init [project-name]
```

When this command is executed, multiple set of questions will be prompted that must be answered to setup the project. By default, the Boyka project uses Java 17 as programming language and Maven as the build tool.

> [!TIP]
> Boyka CLI assistant will allow setting up the project quickly within seconds.
## 👜 Resources

- [🤔 What is Boyka Framework?](https://BoykaFramework.github.io/boyka-framework/docs/intro#what-is-boyka-framework)
- [💡 Why Boyka Framework was created?](https://BoykaFramework.github.io/boyka-framework/docs/intro#why-boyka-framework-was-created)
- [🎯 Features](https://BoykaFramework.github.io/boyka-framework/docs/intro#features)
Expand Down
3 changes: 2 additions & 1 deletion lerna.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"version": "2.0.0",
"version": "2.1.0",
"npmClient": "pnpm",
"useWorkspace": false,
"changelog": {
"repo": "BoykaFramework/boyka-framework",
"labels": {
Expand Down
12 changes: 6 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,32 +38,32 @@
"@stylistic/eslint-plugin-js": "^2.8.0",
"@stylistic/eslint-plugin-ts": "^2.8.0",
"@types/node": "^22.7.4",
"@typescript-eslint/eslint-plugin": "^8.7.0",
"@typescript-eslint/parser": "^8.7.0",
"@typescript-eslint/eslint-plugin": "^8.8.0",
"@typescript-eslint/parser": "^8.8.0",
"commitlint": "^19.5.0",
"eslint": "^9.11.1",
"eslint-config-google": "^0.14.0",
"eslint-config-prettier": "^9.1.0",
"eslint-import-resolver-typescript": "^3.6.3",
"eslint-plugin-import": "^2.30.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-react": "^7.37.0",
"globals": "^15.9.0",
"eslint-plugin-react": "^7.37.1",
"globals": "^15.10.0",
"husky": "^9.1.6",
"js-yaml": "^4.1.0",
"lerna": "8.1.8",
"lerna-changelog": "^2.2.0",
"lerna-version": "^6.6.2",
"lint-staged": "^15.2.10",
"lodash": "^4.17.21",
"nx": "^19.8.2",
"nx": "^19.8.3",
"prettier": "^3.3.3",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"release-it": "^17.6.0",
"ts-node": "^10.9.2",
"typescript": "^5.6.2",
"typescript-eslint": "^8.7.0"
"typescript-eslint": "^8.8.0"
},
"scripts": {
"preinstall": "npx only-allow pnpm",
Expand Down
581 changes: 305 additions & 276 deletions pnpm-lock.yaml

Large diffs are not rendered by default.

27 changes: 16 additions & 11 deletions website/docs/framework-docs/getting-started/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ sidebar_position: 1
title: 🚀 Quick start
---

## 🤖 Using automated approach
## 🤖 Using automated approach (Recommended)

### 🚩 Pre-requisites

Expand Down Expand Up @@ -33,12 +33,22 @@ Here, you can give any project name of your choosing.

When you execute this command, you will be asked a set of questions, based on which, the Boyka project will be setup.

:::tip
While answering the questions, make sure you read it carefully and reply accordingly to your requirement.
:::

A new folder of the project name which you provided to the command will be created which you can open in any IDE of your choosing.

:::tip
:::info
It is recommended to use IntelliJ IDEA for writing your test.
:::

Open the newly created project in IntelliJ IDE and do a Maven refresh using the `Maven Tab`. Next, build the project using the `Build menu`, when prompted `Enable Lombok Annotation Processing`, click to enable it.

:::tip
If the project is set using Boyka CLI assistant and the sample tests have been generated, refer those tests for code walkthrough and write your own tests using it as an example.
:::

## 💪 Using manual approach

### ✨ Create Maven project
Expand All @@ -59,17 +69,12 @@ You can also enforce the Java version in `pom.xml` file as shown below.

### ⬇️ Add Dependency

Add the following dependency to your `pom.xml` file:

```xml title="pom.xml"
<dependency>
<groupId>io.github.boykaframework</groupId>
<artifactId>boyka-framework</artifactId>
<version>2.0.0</version>
</dependency>
```
:::info
Use the latest version from [Maven Central][maven-central] and add it to your `pom.xml`
:::

[jdk17]: https://adoptium.net/temurin/releases/
[maven]: https://maven.apache.org/install.html
[maven-download]: https://maven.apache.org/download.cgi
[node]: https://nodejs.org/en/download/package-manager
[maven-central]: https://mvnrepository.com/artifact/io.github.boykaframework/boyka-framework
35 changes: 12 additions & 23 deletions website/docs/framework-docs/guides/config/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -449,30 +449,11 @@ See the example in [sample configuration file](#config-sample).
| `page_load_strategy` | Page loading strategy (all in capital letters) | [`PageLoadStrategy`](https://www.selenium.dev/documentation/webdriver/drivers/options/#pageloadstrategy) | `NORMAL` |

:::info
For fields `user_name` and `password`, you can use placeholder variables in the following format:

| Input type | Variable sample |
| ---------- | --------------- |
| Base64 Decoder | `${base64Decoder:SGVsbG9Xb3JsZCE=}` |
| Base64 Encoder | `${base64Encoder:HelloWorld!}` |
| Java Constant | `${const:java.awt.event.KeyEvent.VK_ESCAPE}` |
| Date | `${date:yyyy-MM-dd}` |
| DNS | `${dns:address\|apache.org}` |
| Environment Variable | `${env:USERNAME}` |
| File Content | `${file:UTF-8:src/test/resources/document.properties}` |
| Java | `${java:version}` |
| Localhost | `${localhost:canonical-name}` |
| Properties File | `${properties:src/test/resources/document.properties::mykey}` |
| Resource Bundle | `${resourceBundle:org.example.testResourceBundleLookup:mykey}` |
| Script | `${script:javascript:3 + 4}` |
| System Property | `${sys:user.dir}` |
| URL Decoder | `${urlDecoder:Hello%20World%21}` |
| URL Encoder | `${urlEncoder:Hello World!}` |
| URL Content (HTTP) | `${url:UTF-8:http://www.apache.org}` |
| URL Content (HTTPS) | `${url:UTF-8:https://www.apache.org}` |
| URL Content (File) | `${url:UTF-8:file:///${sys:user.dir}/src/test/resources/document.properties}` |
| XML XPath | `${xml:src/test/resources/document.xml:/root/path/to/node}` |
You can use Environment variables for `user_name` and `password` by using `${env:ENV_NAME}` format
:::

:::tip
When you use Boyka command line assistant to configure your test to run on any Cloud providers using `boyka config [web | api | android | ios] [config_name]` command, then it is **MANDATORY** to provide Environment variable names when prompted for user name and password
:::

#### Mobile Configuration {#mobile-config}
Expand Down Expand Up @@ -521,6 +502,14 @@ For fields `user_name` and `password`, you can use placeholder variables in the
| `local_timezone` | Use local timezone for timestamps | `boolean` | `false` |
| `timestamp` | Show timestamps in console output | `boolean` | `false` |

:::info
You can use Environment variables for `user_name` and `password` by using `${env:ENV_NAME}` format
:::

:::tip
When you use Boyka command line assistant to configure your test to run on any Cloud providers using `boyka config [web | api | android | ios] [config_name]` command, then it is **MANDATORY** to provide Environment variable names when prompted for user name and password
:::

##### Mobile Device Configuration {#device-config}

| Property | Description | Type | Default |
Expand Down
3 changes: 2 additions & 1 deletion website/docs/framework-docs/intro.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ sidebar_position: 1

## What is Boyka Framework?

Boyka Framework is an open source Test Automation Framework based in Java, which helps you in automating Web, API, Android and iOS based applications with ease.
Boyka Framework is an open source Test Automation Framework written in Java that supports automating Web, API, and Mobile (Android and iOS applications) seamlessly.

## Why Boyka Framework was created?

Expand All @@ -20,6 +20,7 @@ This inspired me to create a single framework—Boyka—that solves these proble
## Features

- ✅ Zero boilerplate code
- ✅ Boyka command line assistant for one step installation and setup
- ✅ Support Rest API automation with schema validations and response body verification
- ✅ Supports Web browser automation with support for Chrome, Edge, Firefox and Safari.
- ✅ Supports Android native and hybrid apps automation
Expand Down
7 changes: 3 additions & 4 deletions website/docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,8 @@ const config: Config = {
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'throw',
favicon: 'img/Boyka.png',
organizationName: 'BoykaFramework', // Usually your GitHub org/user name.
projectName: 'boyka-framework', // Usually your repo name.

organizationName: 'BoykaFramework',
projectName: 'boyka-framework',
plugins: [
[
'@docusaurus/plugin-content-docs',
Expand Down Expand Up @@ -111,7 +110,7 @@ const config: Config = {
id: 'star-the-repo',
content: `⭐ Don't forget to Star the repo on 👉
<a target='_blank' rel='noopener noreferrer'
href='https://git.new/boyka-github'>GitHub</a> ⭐ |
href='https://github.com/BoykaFramework/boyka-framework'>GitHub</a> ⭐ |
🤝 Support us by Sponsoring us on <a target='_blank' rel='noopener noreferrer'
href='/~https://github.com/sponsors/BoykaFramework'>GitHub Sponsors</a> 🤝`,
backgroundColor: '#ffb600',
Expand Down

0 comments on commit 262f2b4

Please sign in to comment.