LINE Shopping provides an e-commerce platform in Taiwan. It has over 9 million monthly visitors, a 40% repurchase rate, and lists over 26 million products from over 1,300 brands. The document discusses how to test the LINE Shopping platform, including unit, API, and UI tests. It also describes tools like Just-API and Pyresttest that can be used to test GraphQL and REST APIs respectively using YAML configuration files.
4. How to test in LINE 購物?
UI tests
API tests
Unit tests
Automation Testing Pyramid
- Most of the test cases were unit tests
- API tests access all the services using REST
- UI tests are always expensive to maintain
5. How to test in LINE 購物?
Measure data is reliable
Analyse cost of doing any test result
Gathering acceptance criteria
Improve practical solutions
Control lean principles
6. How to test in LINE 購物?
Measure data is reliable
Sitemap.xml APIParser
7. How to test in LINE 購物?
Analyse cost and response time
8. How to test in LINE 購物?
Gathering acceptance criteria
1 Test 30 times
2
3
Response time < 500 ms
JSON Schema Pass
9. How to test in LINE 購物?
Improve practical solutions
Continuous
Testing
(24HR)
monitor
(30min)
LINE
Notify
Health
Check
(every minute)
10. How to test in LINE 購物?
Control lean principles tools
11. How to test API in LINE 購物?
Front-End
Just-API GraphiQL
Back-End
PyRestTest Swagger
13. What is Just-API?
Just-API is a specification based framework to test GraphQL APIs. It
takes API suite specification from YAML files.
There are several tools and companies available that offer nice UI to test
APIs, but none of them really handle complex API automation flows. So why
not a framework that allows users to test complex API scenarios with
minimal coding.
14. What is GraphQL?
GraphQL is a query language for your API, and a server-side runtime for
executing queries by using a type system you define for your data.
GraphiQL is an in-browser tool for writing, validating, and testing GraphQL queries.
GraphQL server operates on a single URL/endpoint, usually /graphql, and all
GraphQL requests for a given service should be directed at this endpoint.
19. What is Pyresttest?
• A REST testing and API microbenchmark tool
• Tests are defined in basic YAML or JSON config files, no code needed
• Minimal dependencies (pycurl, pyyaml, optionally future)
• Returns exit codes on failure
• Logic is written and extensible in Python
22. Pyresttest
$ python resttest.py https://jsonplaceholder.typicode.com examples/smoke.yaml
Test Group :: Default :: NO Of Test Cases: 1
Test Name: GET todos 1 : SUCCEEDED
Tests PASSED: 1; Tests FAILED: 0; Tests EXECUTED: 1
Test Group Default SUCCEEDED: : 1/1 Tests Passed!
Total Tests PASSED: 1; Total Tests FAILED: 0; Total Tests EXECUTED: 1