Arvind Padmanabhan
Trustee @ Devopedia Foundation
#4 Bypass GUI
#5 Dependency Injection & Mocking
#6 CRUD vs Data-first Approach
#7 CAPTCHA
#8 Manage Tokens, API Keys, etc.
#9 Look Under the Hood
#1 Purpose of Testing
#2 Test Configuration
#3 Modular Test Cases
Find Bugs
Validate the product
Tester's perspective
Developer's perspective
-- Yegor Bugayenko
"default": {
"php": "php8.1",
"mysql": "mysql"
}
},
"logs": {
"main": "../../tmp/mainAppLog.txt",
"phperr": "../../php_errors.log"
},
"online": true,
"db": {
"driver": "mysql+pymysql",
"host": "127.0.0.1",
"user": "root",
"pwd": "",
"name": "test"
},
"data": {
"default": {
"src": "data/default.sql",
"maxids": {
"acronyms": 211,
"article_request": 80,
"chat_msgs": 11710,
Local testing
CI/CD
Staging
Load Article Form
Login
Save Article
The smallest unit of execution is a test case.
What test cases and procedures to execute are determined by a test plan.
Separate CLI and GUI tests. Separate DB interfacing from main test execution.
Test cases executed in a specific sequence is a test procedure.
For better reuse, each test case shouldn't do too many things.
Exercise server-side validation
Use tools: Postman, curl, etc.
Don't forget client-side validation
send_email
write_to_file
write_to_socket
App
External Weather Service
Weather API
Weather Mock
Create
Read
Update
Delete
Read
Delete
Create
Update
Test Data Generator *
* Helps test pagination, filtering, searching, performance, ...
Use an in-house generated CAPTCHA
(Tokens, API Keys, Passwords, etc.)
Read from untracked files or environment variables
Don't commit these into the code repo (use .gitignore)
{
"facebook": {
"name": "xxx",
"login": "xxx",
"password": "xxx",
"email": ""
},
"zap": {
"apikey": "xxx"
},
"OAuth": {
"bitbucket": {
"key": "xxx",
"secret": "xxx"
}
...
Use a Git Hook to catch unintentional commits
Perform HTML validation
Analyze server logs & browser console logs
Detect SEO problems
Study or review dev code
As a tester, what test cases can you think of?
Does the code suggest any design problems?
Software testers always go to heaven; they've already had their fair share of hell.
-- Anonymous
Support us as a reader, writer, editor or donor.
Write to webadmin@devopedia.org