{"id":22181221,"url":"https://github.com/dianpermana/practical-test","last_synced_at":"2025-03-24T19:19:02.945Z","repository":{"id":158542882,"uuid":"633799331","full_name":"DianPermana/Practical-Test","owner":"DianPermana","description":"Practical test by Dian Permana","archived":false,"fork":false,"pushed_at":"2023-04-29T03:09:32.000Z","size":26,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T23:41:53.821Z","etag":null,"topics":["automation","jmeter","practical-test","selenium","test"],"latest_commit_sha":null,"homepage":"https://restcountries.com/#api-endpoints-v3-all","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DianPermana.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-28T09:56:51.000Z","updated_at":"2023-04-29T03:11:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"fc9904ac-bc8d-4798-976e-19d69323b302","html_url":"https://github.com/DianPermana/Practical-Test","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DianPermana%2FPractical-Test","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DianPermana%2FPractical-Test/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DianPermana%2FPractical-Test/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DianPermana%2FPractical-Test/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DianPermana","download_url":"https://codeload.github.com/DianPermana/Practical-Test/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245334908,"owners_count":20598389,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","jmeter","practical-test","selenium","test"],"created_at":"2024-12-02T09:27:15.676Z","updated_at":"2025-03-24T19:19:02.898Z","avatar_url":"https://github.com/DianPermana.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Practical-Test / Written Assignment\n\n\n# 1. Q1 Create a test scenario which has multiple test cases for the following features:\n```\n1. As a user, I want to create a public gist.\t\n2. As a user, I want to edit an existing gist.\t\n3. As a user, I want to delete an existing gist.\t\n\nThe test cases should include as much detail as possible.\n```\n\nDetail Can be check here : https://gist.github.com/DianPermana/00fd30b7c5065875c2337ad6ffbc6d1e\n\n# 2. Q2 Go to https://petstore.octoperf.com/actions/Catalog.action and report at least 3 bugs.\n\n```\nFeature : Search feature\n   Given open https://petstore.octoperf.com/actions/Catalog.action\n   And Input \"Birds\" on search menu\n   When I click Search button\n   Then should be displayed all birds product\n   \n   **Result   : Not Appear product \"Birds\"**\n   **Expected : Appear all product \"Birds\"**\n   \nFeature : Refresh page\n   Given After scenario 1\n   When I refresh or click Reload this page\n   Then Back to Main page\n\t\n   **Result   : Still on the same page \u003e Not Appear product \"Birds\"**\n   **Expected : Back to main page or page refresh properly**\n  \n Feature : Add to cart\n   Given I am on \"https://petstore.octoperf.com/actions/Cart.action\"\n   And I Click \"Fish\" Categories \n   And I Click \"FI-SW-01\" Product ID with \"Anglefish\"name\n   When click button Add to cart \"FI-SW-01\" with description \"Large Angelfish\"\n   Then Should be succesfully add to chart \n     \n   **Result   : Failed add to cart**\n   **Expected : succesfull add to cart**\n\t\n Feature : flow transaction\n   Given I have one product on shopping cart\n   And Input Quantity from 1 to 9999\n   When I Click button Update Cart\n   Then the \"Description In Stock?\" should be true\n\t\n\t       | Item ID  | Product ID\t              | Description In Stock?\t | Quantity\t| List Price     | Total Cost\n    Result   : | FI-SW-02 | Toothless Tiger Shark     |\tfalse\t                 | 9999         | $18.50\t | $184.981.50\n    Expected : | FI-SW-02 | Toothless Tiger Shark     |\ttrue\t                 | 9999         | $18.50\t | $184.981.50\n```\n\nEvidence Result testing\n\nhttps://user-images.githubusercontent.com/18004033/235273419-42259705-b901-4fd0-a678-63d2b4e324a7.mp4\n\n\n# 3. Q3 Below is a public API doc listing a collection of API endpoints related to Countries. https://restcountries.com/#api-endpoints-v3-all\n\n\nScript test can be check here : https://github.com/DianPermana/Practical-Test/blob/main/Rest_Countries.jmx\n\nResults API testing : \n\nhttps://user-images.githubusercontent.com/18004033/235127492-47b20517-978d-4345-bedf-46bb8cadb1a1.mp4\n\nI use JMeter to create scenario testing, and divide it into two categories of scenario tests, namely positive cases and negative cases. Json Extractor as main sampler to extract data from response end point (https://restcountries.com/v3.1/name/{name}) and then store for all of the next process on other end point, so more easy for product team especially QA. if we want to change which country want to check. some end point issue especially for currency end point (https://restcountries.com/v3.1/currency/{currency}). The interesting thing about this testing is that I'm trying to create modular test scripts, so that by changing only 1 parameter, which is the country name, all endpoints can be run sequentially.\n\n# 4. Q4 Are you familiar with Automation testing?\n```\nIf yes, create an automation script using any framework of your choice for the below scenario:\n1. Go to https://www.cermati.com/gabung\n2. Enter all required fields (cover only positive cases) and register your account If no, canyou code in python or Javascript?\n```\n\nYes, I have experience. Since the task automation is relatively simple, I opted to use JMeter as it is easier to use within a set framework. I am also accustomed to using pytest for automation, which can be viewed here: https://github.com/DianPermana/Automation-Testing-BDD\n\n\nResults Automation testing : \n\nhttps://user-images.githubusercontent.com/18004033/235124869-b6dff3f4-1729-4d0a-bd68-2c9b829ff307.mp4\n\n\nTech stack : \n\n1. [x] java 17.0.5 2022-10-18 LTS\n2. [x] Selenium 4\n3. [x] Chrome driver.exe Version 112.0.5615.138 (Official Build) (64-bit)\n4. [x] JMeter 5.5\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdianpermana%2Fpractical-test","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdianpermana%2Fpractical-test","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdianpermana%2Fpractical-test/lists"}