A lightweight e-commerce test site built for practicing UI test automation with Ruby Raider and Raider Desktop.
- Login flow with pre-configured test users
- Product catalog with 8 products across multiple categories
- Shopping cart (session-based, add/remove items)
- Product detail pages with quantity selection
- 404 error handling
| Username | Password | Name |
|---|---|---|
aguspe |
12341234 |
Agustin |
testuser |
test1234 |
Test User |
| Page | URL |
|---|---|
| Home | / |
| Login | /index.php?rt=account/login |
| Account | /index.php?rt=account/account |
| Logout | /index.php?rt=account/logout |
| Product Detail | /product/:id |
| Cart | /cart |
These element selectors are designed to match the ones used by Ruby Raider and Raider Desktop:
| Element | Selector |
|---|---|
| Username field | id="loginFrm_loginname" |
| Password field | id="loginFrm_password" |
| Login button | //button[@title='Login'] |
| Customer menu | id="customer_menu_top" |
| Add to Cart buttons | //button[@title='Add to Cart'] |
After a successful login, the header displays "Welcome back {name}". When logged out, it shows "Login or register".
npm install
node server.jsThe site runs on http://localhost:3000 by default. Set the PORT environment variable to change it.
This project includes a render.yaml blueprint for one-click deployment:
- Push this repo to GitHub
- Go to Render > New > Blueprint
- Connect the repository — Render reads
render.yamland configures everything automatically
Alternatively, create a Web Service manually with:
- Build Command:
npm install - Start Command:
node server.js - Plan: Free
- Node.js + Express — server
- EJS — server-rendered templates
- express-session — session-based login and cart
- In-memory JSON — no database required