Continuous integration (CI) and continuous delivery (CD) process almost software company has this process and I don't need to explain what is CI/CI!!

I work as Automate QA Engineer and need to share the experience because this position besides coding skills and testing skills, should know the processing pipeline and can handle it as well. If you can run automate test only your on matching, It’s unuseful.

YAML build definitions can be added to a project. Azure DevOps also provides default templates and simplifies the process of defining build and release tasks.

Because, I have started to create a new integration test project and after I check The Project API, they implemented and configure Web API by calling GlobalConfiguration.Configure in the Application_Start method.

Today I want to share how to we arrange life cycle when we would like to create automate test

I will explain from the project I have been implementing. Let’s go!!!

As I tried to implement integration by automation testing at testing the ASP.NET Web API pipeline using its in-memory hosting capabilities. So, I will show how to host ASP.NET Web API, using OWIN to self-host the Web API framework.

what is Gherkin?

  • Business readable domain specific language.
  • Represents tests in natural language, not code
  • Line-oriented
  • Users indepentation to create structure
  • Keywords(e.g. Feature, Scenario)
  • Localised in 40+spoken laguages (French, Bulgaruan, Japanese,etc.)


  • Contain one or more scenarios
  • Group/contain logiclly related test scenarios
  • Represent small, discrete feature of the system
  • Start with “Feature:” keyword
  • Followed by feature name/terse description
  • Optional free text description


  • Concrete examples of expected system behaviour
  • Each scenario describes a particular situation
  • Each scenario should be independent and isolate
  • Can represent : Happy paths, Error paths, Edge cases
  • Start with: “Scenario:” keyword
  • Followes by title

Nov 14,2019. Reference: 1 Day Experience Sharing with Khun Prathan(Noom) Dansakulcharoenkit at Siam Chamnankit co. Ltd.

“1 Day Experience Sharing, Change from Manual Testing to Automation Testing”

The trainer shared his experience regarding automation testing development that big firms or software houses would face. For example, prepared UI automation Testing would be affected after code development. In addition, all tests cannot be completely covered with UI automation testing. Not to mention a drained efforts.

Facts of testing in Waterfall methodology

  • Testing is involved in the later phase of SDLC because earlier phases , which are requirements , analysis and design , and coding are delay. However…

Assertion & Verification

  • Assertion are the check points in the test.
  • There are used to validate, whether the expected output and actual output are same or not.
  • Base on the assertion, the test case either get passed or failed.
  • The line at which assertion failed, after that line all the line the code will be skipped.
  • For assertion we are going to use “Assert” class.
Assert Class

After I explained about meaning of Specflow and what is keyword of Cucumber framework . (Automate Test) Behavior Driven Development-Specflow #1

In this content I will show basic step to do Specflow automate. you can follow me and try to create by yourself.

Step Definition Concept

  1. Add Feature file > Create Scenario > Give When Then And steps
Add Feature file

In the first time, before we will implement. I would like to explain about Specflow, BDD and Cucumber about meaning and why i am using specflow to implement Automate test. let go to enjoy >>>

What is BDD ?

  • Behavior Driven Testing is an enhancement of TDD.
  • In BDD also we write tests first and than later we add code for the test.
  • Tests are write in plain English type gamma.
  • Every tests represent a behavior of an application

What is Cucumber ?

  • Cucumber is testing framework which support BDD.
  • Cucumber use gamma defined by language called Gherkin
  • Gherkin language…

ถ้าใครยังไม่ทราบว่า Puppeteer คืออะไร และติดตั้งอย่างไร สามารถเข้าไปดูได้ใน ในบทความที่แล้ว


  • สร้างไฟล์ JavaScript ขึ้นมา เช่น lazada_test.js จากนั้น ทำการ import Puppeteer library
const puppeteer = require(‘puppeteer’);

หลังจากนั้น set up Open Browser and Close Browser ซึ่งสร้างไฟล์ config.js และ Puppeteer สามารถ set up ตั้งค่า headless

  • false: แสดงหน้าจอ
  • true: รันแบบซ่อนหน้าจอ

เมื่อทำการ Set up Open Browser เรียบร้อยแล้ว มาเริ่มทำ Test case กัน

  • describe : อธิบายการทดสอบ
  • it : Test case / Test scenario

เพื่อให้ง่ายต่อการ implement สามารถทำการแยก Object เพื่องานต่อการ coding ยกตัวอย่างเช่น สร้าง Utility.js

หลังจากที่สร้าง test case เรียบร้อยแล้ว

Run Program

  1. สร้าง file package.json และกำหนด path
{"name": "pptr-project","version": "1.0.0","description": "Test WEB UI","main": "index.js","scripts": {"test": "D:/MyJobs/pptr-lazada/node_modules/.bin/mocha --timeout=30000 ./tests"…

Piyathida San-aoun

Automate QA Engineer at Draycir

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store