-
Notifications
You must be signed in to change notification settings - Fork 2
feat: Enhance README with product pitch and ELI5 technical explanation #8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -6,17 +6,45 @@ | |
|  | ||
|  | ||
|
|
||
| **Transform plain English into production-ready test automation.** Mark 1 is an intelligent test generation platform that converts natural language descriptions into executable Robot Framework code using a sophisticated multi-agent AI system. No coding requiredβjust describe what you want to test. | ||
| **Transform plain English into production-ready test automation.** Mark 1 is your one-stop solution for writing automation tests without coding. Just describe what you want to test in plain English, and watch it generate working Robot Framework tests automatically. Write once, execute infinitelyβeven if your application changes! | ||
|
|
||
| ``` | ||
| "Open Flipkart and search for shoes and then get the first product name" | ||
| β | ||
| [4 AI Agents Working Together] | ||
| β | ||
| β Working Robot Framework Test | ||
| β Working Robot Framework Test (Can run forever) | ||
| ``` | ||
|
Comment on lines
11
to
17
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. π§© Analysis chainFix markdown linting violation: add language specifier to code block (MD040). The ASCII diagram code block is missing a language identifier. Per the past review feedback and markdown standards, this and other fenced code blocks should specify their language. Apply this diff to fix the code block: -```
+```text
"Open Flipkart and search for shoes and then get the first product name"
β
[4 AI Agents Working Together]
β
β
Working Robot Framework Test (Can run forever)
-```
+```π Script executed: #!/bin/bash
# Verify code block at lines 11-17 and scan for all MD040 violations
echo "=== Lines 11-17 of README.md ==="
sed -n '11,17p' README.md
echo -e "\n=== Scanning for all fenced code blocks without language specifiers (MD040) ==="
# Find all opening ``` fences and check if they have a language specifier on the same line
rg -n '^\s*```\s*$' README.md | head -20
echo -e "\n=== Quick Start section (lines 72-108) ==="
sed -n '72,108p' README.md | head -30Length of output: 313 π Script executed: #!/bin/bash
# Verify code block at lines 11-17 and scan for all MD040 violations
echo "=== Lines 11-17 of README.md ==="
sed -n '11,17p' README.md
echo -e "\n=== Scanning for all fenced code blocks without language specifiers (MD040) ==="
# Find all opening ``` fences that are NOT followed by a language identifier
rg -n '^\s*```\s*$' README.md
echo -e "\n=== Quick Start section (around lines 72-108) ==="
sed -n '70,110p' README.md
echo -e "\n=== Checking for Windows PowerShell references ==="
rg -in 'powershell|pwsh|windows.*shell' README.mdLength of output: 1629 Fix markdown linting violation: add language specifier to code block (MD040). The ASCII diagram code block at lines 11β17 is missing a language identifier. This violates markdown linting rule MD040. Additionally, similar violations exist at multiple other code blocks throughout the file (lines 98, 104, 106, 113, 115, 118, 120, 127, 129, 148, 160, 175, 177, 200, 225, 238, 253). Apply this diff to fix the code block at lines 11β17: -```
+```text
"Open Flipkart and search for shoes and then get the first product name"
β
[4 AI Agents Working Together]
β
β
Working Robot Framework Test (Can run forever)
-```
+```For consistency, all fenced code blocks should specify appropriate language identifiers (e.g., π§° Toolsπͺ markdownlint-cli2 (0.18.1)11-11: Fenced code blocks should have a language specified (MD040, fenced-code-language) π€ Prompt for AI Agents |
||
|
|
||
| ## Why Mark 1? | ||
| ## π What Can Mark 1 Do For You? | ||
|
|
||
| ### β Your One-Stop Solution for Automation Testing | ||
| - **No Coding Required** - Write tests in plain English, not Python or JavaScript | ||
| - **Works on Any Website** - E-commerce, SaaS, web appsβanything with a UI | ||
| - **Generates Professional Code** - Beautiful Robot Framework tests that even manual QAs can read | ||
| - **Fast Test Creation** - 20-30 seconds from idea to working test | ||
|
|
||
| ### π Write Once, Execute Infinitely | ||
| - **Reusable Tests** - Generate test code once, run it 1000 times | ||
| - **Environment Agnostic** - Same test works on dev, staging, and production | ||
| - **No Re-recording Needed** - Unlike traditional record-and-playback tools, AI keeps up with UI changes | ||
| - **Cost Efficient** - Setup overhead paid once, then unlimited test runs | ||
|
|
||
| ### π§ Gets Smarter Over Time | ||
| - **Learns Your Architecture** - Remembers common navigation patterns and workflows | ||
| - **Contextual Understanding** - AI understands your product's structure and layout | ||
| - **Fewer Tokens Over Time** - As it learns your system, it uses fewer AI tokens per test | ||
| - **Better Outputs** - More specific, stable, and efficient tests with each run | ||
|
|
||
| ### π₯ Perfect for Manual QA Teams | ||
| - **Easy to Read** - Robot Framework syntax is plain English-like, no technical skills needed | ||
| - **Self-Documenting** - Test code IS the documentation | ||
| - **Low Learning Curve** - Manual QAs can understand and maintain tests immediately | ||
| - **Empowerment Without Complexity** - Keep your QA team without forcing them to become developers | ||
|
|
||
| --- | ||
|
|
||
| ## Why Mark 1 Stands Out | ||
|
|
||
| - π― **95%+ Success Rate** - Vision-based element detection that actually works | ||
| - β‘ **3-5x Faster** - Batch processing finds all elements in one session | ||
|
|
@@ -25,7 +53,7 @@ | |
| - π¦ **Zero Setup** - One command to start, works out of the box | ||
| - π¨ **Beautiful Reports** - Detailed HTML logs for easy debugging | ||
|
|
||
| ## Quick Comparison | ||
| ## π Quick Comparison | ||
|
|
||
| | Feature | Mark 1 | Selenium IDE | Playwright Codegen | Manual Coding | | ||
| |---------|--------|--------------|-------------------|---------------| | ||
|
|
@@ -35,6 +63,63 @@ | |
| | **Learning Curve** | None | Low | Medium | High | | ||
| | **Maintenance** | Simply Rerun | Re-record | Re-record | Manual updates | | ||
|
|
||
| ## πΌ Real-World Use Cases | ||
|
|
||
| ### ποΈ E-commerce & Retail | ||
| **Scenario**: Test search functionality across your product catalog | ||
| ``` | ||
| "Search for 'blue shoes' on the website, verify results appear, | ||
| and check that the first product has a price" | ||
| ``` | ||
| β **Benefit**: Catch product page layout changes automatically, no re-recording | ||
|
|
||
| ### π¦ Financial Services | ||
| **Scenario**: Test user account workflows | ||
| ``` | ||
| "Login with credentials admin@company.com, navigate to settings, | ||
| change password to NewPassword123, and verify success message" | ||
| ``` | ||
| β **Benefit**: Complex flows are easy to describe, maintained as readable code | ||
|
|
||
| ### π₯ Healthcare Platforms | ||
| **Scenario**: Test patient data entry flows | ||
| ``` | ||
| "Fill patient form with John Doe, age 30, select blood type O+, | ||
| upload medical record, and submit" | ||
| ``` | ||
| β **Benefit**: Non-technical medical staff can verify and understand tests | ||
|
|
||
| ### βοΈ SaaS Applications | ||
| **Scenario**: Test multi-page workflows | ||
| ``` | ||
| "Create new project, add 3 team members, set privacy to private, | ||
| and verify they can access the project" | ||
| ``` | ||
| β **Benefit**: Tests stay valid even after UI redesigns with AI adaptation | ||
|
|
||
| ### π± Cross-Platform Testing | ||
| **Scenario**: Verify workflows on web and mobile-responsive sites | ||
| ``` | ||
| "Open website on mobile viewport, search for items, | ||
| add to cart, and proceed to checkout" | ||
| ``` | ||
| β **Benefit**: Single test description works on responsive designs | ||
|
|
||
| --- | ||
|
|
||
| ## π― Why Choose Mark 1? (The Bottom Line) | ||
|
|
||
| | Your Situation | Mark 1 Solution | Time Saved | | ||
| |---|---|---| | ||
| | **You have manual QA team** | No coding needed, tests are readable English | β 40-60% faster test creation | | ||
| | **UI changes frequently** | Tests auto-adapt via AI | β No test maintenance time | | ||
| | **Need tests for new features** | Write tests before code exists | β Test-driven development ready | | ||
| | **Legacy testing tools too slow** | Batch element detection | β 3-5x faster than Selenium IDE | | ||
| | **Testing is expensive** | Reuse tests indefinitely | β Lower total cost of ownership | | ||
| | **Hard to scale QA** | One engineer β 1000 tests | β Enable non-technical QAs | | ||
|
|
||
| --- | ||
|
|
||
| ## π Quick Start | ||
|
|
||
| ### Prerequisites | ||
|
|
@@ -92,7 +177,31 @@ python tools/browser_use_service.py | |
|
|
||
| **Pro Tip:** Be specific about what you want. Mention exact elements like "first product name" or "search button in header". | ||
|
|
||
| ## ποΈ How It Works | ||
| ## ποΈ How It Works (Explain Like I'm 5) | ||
|
|
||
| **Imagine you're teaching a robot to test your website:** | ||
|
|
||
| ``` | ||
| 1. YOU: "Go to Google and search for 'cats'" | ||
|
|
||
| 2. ROBOT THINKS: "OK, let me break that down: | ||
| - Step 1: Go to Google.com | ||
| - Step 2: Find the search box | ||
| - Step 3: Type 'cats' | ||
| - Step 4: Press Enter" | ||
|
|
||
| 3. ROBOT LOOKS: (uses AI eyes to see the website) | ||
| "I see a search box with id='search' | ||
| I see a search button with class='submit'" | ||
|
|
||
| 4. ROBOT WRITES: (generates test code in Robot Framework) | ||
| "Open Browser β Fill Text in search box β Click button" | ||
|
|
||
| 5. ROBOT TESTS: (runs the test in a clean sandbox) | ||
| "β Test passed! Everything worked!" | ||
| ``` | ||
|
|
||
| **In Technical Terms:** | ||
|
|
||
| Mark 1 uses a **multi-agent AI system** to transform your natural language into working tests: | ||
|
|
||
|
|
@@ -102,7 +211,7 @@ Your Query β [AI Processing] β Robot Framework Code β Execution β Result | |
|
|
||
| **The Process:** | ||
| 1. **Intelligent Planning** - Query analyzed and broken into precise steps | ||
| 2. **Smart Element Detection** - AI finds web elements with 95%+ accuracy | ||
| 2. **Smart Element Detection** - AI finds web elements with 95%+ accuracy (using computer vision) | ||
| 3. **Code Generation** - Transforms steps into production-ready Robot Framework code | ||
| 4. **Quality Assurance** - Validates code before execution | ||
| 5. **Isolated Execution** - Runs in clean Docker containers | ||
|
|
@@ -113,6 +222,8 @@ Your Query β [AI Processing] β Robot Framework Code β Execution β Result | |
| - β Real-time progress updates | ||
| - β Validated locators that work on dynamic websites | ||
|
|
||
| **Want deeper details?** See the [Architecture Documentation](docs/ARCHITECTURE.md) for the full technical breakdown. | ||
|
|
||
| ## π Project Structure | ||
|
|
||
| ``` | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
π οΈ Refactor suggestion | π Major
Add language identifiers to fenced code blocks per markdown formatting standards.
Seven code blocks are missing language specifiers (MD040 violations). For ASCII diagrams, use
```textor```plaintext; for shell commands, use```bash; for test examples, use```robot.Apply these diffs to fix the markdown linting violations:
+
text "Open Flipkart and search for shoes and then get the first product name" β [4 AI Agents Working Together] β β Working Robot Framework Test (Can run forever) -+```
+```text
YOU: "Go to Google and search for 'cats'"
ROBOT THINKS: "OK, let me break that down:
ROBOT LOOKS: (uses AI eyes to see the website)
"I see a search box with id='search'
I see a search button with class='submit'"
ROBOT WRITES: (generates test code in Robot Framework)
"Open Browser β Fill Text in search box β Click button"
ROBOT TESTS: (runs the test in a clean sandbox)
"β Test passed! Everything worked!"
-
+In README.md around lines 11, 70, 78, 86, 94, 102 and 184, several fenced code
blocks lack language identifiers; update each opening
fence to include the appropriate language specifier (usetext for ASCII diagrams,plaintext for plain text/test examples,bash for shell commands, androbot for Robot Framework examples) so each code block begins with the correct backticks plus language token and leave the existing closingunchanged.