AWS Community Day Hong Kong 2025 Recap

Automated Testing gamit ang MCP at mga AI Agent

Recap Series

Naka-record na Video

https://www.youtube.com/watch?v=cgoFdt8ybwY&t=1296s

Paghahanda at Pagpaplano

Pundasyon: Testing Data

  • Madalas hindi nabibigyang-pansin ngunit napakahalaga
  • Task management system (hal., Jira): Gumamit ng webhooks upang mag-imbak ng mga update sa AWS S3
  • Swagger documentation: Nagbibigay ng API specifications at parameters
  • Mga dating test case: Nagbibigay-daan sa verification at muling pagsubok sa mga naunang case

Pagkonekta sa mga Data Source

  • Limitado ang kakayahan ng mga tradisyonal na pamamaraan na makahanap ng mga ugnayan
  • Paggamit ng mga Large Language Model (LLM) upang mapag-ugnay ang mga koneksyon
  • Halimbawa:
  • Mariana (karera sa AWS cloud computing na may AI)
  • Dario (co-founder ng Entropic, isang AI company)
  • Bumuo ang Entropic ng serye ng mga LLM na magagamit sa pamamagitan ng AWS Bedrock

Pagpapatakbo

AI-Driven Testing Workflow

  • Paggamit ng AI upang i-automate at paghusayin ang mga proseso ng testing
  • Detalyadong pagtalakay kung paano isinasama ang AI sa umiiral na mga testing framework

Pag-uulat

Komprehensibong Pag-uulat

  • Pagbuo ng makabuluhang mga report mula sa automated tests
  • Paggamit ng AI upang magbigay ng mga insight at rekomendasyong maaaring aksyunan
  • Pagbibigay-diin sa pagbabago ng mga tradisyonal na testing workflow sa tulong ng AI
  • Paanyaya para sa feedback at talakayan tungkol sa mga inilahad na ideya

Pag-unawa sa mga Ugnayan gamit ang Knowledge Graphs

  • Kinukuha ng knowledge graphs ang mga kumplikadong ugnayang hindi kayang makita ng simpleng text search
  • Halimbawa: Ugnayan ni Mariana (karera sa AWS) at Entropic (AI company na itinatag ni Dario)
  • Inihahayag ng knowledge graph ang mga nakatagong koneksyong hindi natatagpuan sa simpleng search

Kahalagahan ng Knowledge Graphs sa Automated Testing

  • Mahalaga para sa automated task at pagbuo ng test case
  • Kinukuha ang mga entity at pinag-uugnay ang magkakaugnay na item mula sa mga data source
  • Halimbawa:
  • Mga requirement ticket
  • API specifications
  • Mga dating test case

Paglikha ng Knowledge Graph

  • Mabigat sa widget at mababa ang visibility ng mga tradisyonal na pamamaraan (hal., PostgreSQL)
  • Hindi episyente ang mga no-code solution (hal., DynamoDB)
  • Mas mahusay ang mga graph database (hal., AWS Neptune, Neo4j) ngunit kailangang matutuhan ang mga bagong konsepto (nodes, edges, properties)

Solusyon: Amazon Neptune Analytics

  • Pinagsasama ang kakayahan ng graph database, foundational models, at AWS Bedrock
  • Nagbibigay-daan sa pagpasok at pagkuha ng impormasyon nang walang kumplikadong syntax
  • Nagbibigay ng malinaw at magandang graph view para sa data visualization

Graph Retrieval Augmented (RA)

  • Teknik kung saan kumukuha ang AI ng mga reference document at bumubuo ng mga tugon
  • Gumagamit ang Graph RA ng knowledge graph sa retrieval sa halip na simpleng text search

AI-Driven Test Pipeline

  • Binuo sa ibabaw ng pundasyon ng knowledge graph
  • Gumagamit ng Behavior-Driven Development (BDD) at Gherkin format para sa mga test case
  • Gumagamit ang mga Gherkin scenario ng mga keyword gaya ng Given, When, at Then upang tukuyin ang paunang state, action, at inaasahang outcome ng isang feature
  • Halimbawang test case: Pagsusuri sa mga title ng homepage gamit ang mga prerequisite at scenario
  • Mahalaga ang knowledge graphs para sa epektibong automated testing
  • Pinapasimple ng Amazon Neptune Analytics ang pamamahala at visualization ng graph database
  • Pinahuhusay ng Graph RA ang AI-driven na pagbuo at pagpapatakbo ng mga test case

AI-Driven na Pagbuo ng Test Case

Layunin

  • Pagbutihin ang coverage at consistency ng mga test case gamit ang mga AI agent

Mga Kakayahan ng AI Agent

  • Pinipili ang pinakamainam na aksyon upang makamit ang mga layunin sa testing
  • Sinusuri ang mga business flow at binabasa ang requirements mula sa knowledge graph

Halimbawa

Feature para sa Subscription Management

Pagsusuri sa Business Flow

  • Tinutukoy ng knowledge graph ang:
  • Validation ng payment method sa UI
  • Pagtawag sa mga payment API

Pagtukoy sa Conflict

  • Tinutukoy ng AI agent ang mga salungatan sa requirement:
  • Lumang patakaran: Kailangang i-verify ng user ang email bago ma-access ang mga premium feature
  • Bagong patakaran: Maaaring i-access ng mga trial user ang mga premium feature sa loob ng pitong araw nang walang email verification
  • Ina-update nang naaayon ang mga kaugnay na test case

Pagtuklas sa mga Detalye ng API

  • Kinukuha mula sa graph DB ang mga endpoint, required/optional parameter, at error response
  • Tinutukoy ang mga API dependency sa pamamagitan ng naka-record na data (hal., matagumpay na paggawa ng subscription, pumalyang payment)

Pagbuo ng Test Data

  • Gumagawa ng test data na sumasaklaw sa:
  • Happy flow (matagumpay na mga scenario)
  • Edge case (mga boundary condition)
  • Error condition (mga pumalyang scenario)

Kongklusyon

  • Pinahuhusay ng mga AI agent ang pagbuo ng test case sa pamamagitan ng:
  • Pagsusuri sa mga business flow
  • Pagtukoy sa mga conflict at pag-update ng mga test case
  • Pagtuklas sa mga detalye at dependency ng API
  • Pagbuo ng komprehensibong test data

Pagpapahusay at Pagpapatakbo ng mga Test Case

Pagpapahusay ng mga Test Case gamit ang Business Rules

  • Gamitin ang impormasyon mula sa pagsusuri ng business flow at mga natukoy na patakaran upang paghusayin ang mga scenario
  • Gawing scenario-based test case ang mga pinahusay na scenario

Human-in-the-Loop Verification

  • Kayang bumuo ng AI ng mga komprehensibong test case, ngunit kailangan ang mga human expert para sa validation
  • Tinitiyak ng human verification na nasasaklaw ang mga edge case at business context
  • Maaaring hindi saklawin ng Jira ticket system, API documentation, at mga dating test case ang lahat ng scenario

Pagpapatakbo gamit ang Playwright

  • Playwright: Mabilis at maaasahang end-to-end testing
  • Sinusuportahan ng Playwright ang lahat ng modernong rendering engine, kabilang ang Chromium, WebKit, at Firefox. Cross-platform ito at maaaring magsagawa ng lokal na testing sa Windows, Linux, at macOS
  • Gamitin ang Playwright sa pagpapatakbo ng mga test
  • Kilala at open-source na automated testing framework
  • Direktang nakikipag-ugnayan sa browser para sa episyenteng testing
  • Sumusuporta sa maraming wika (Java, Python, C, JavaScript, TypeScript)
  • Malakas ang suporta ng community, na may 78.9K stars sa GitHub
  • May native support para sa MCP (Model-Based Continuous Planning) para sa mga instruction sa natural language
  • Mga built-in na feature:
  • Parallel execution para sa episyenteng pagpapatakbo
  • Komprehensibong kakayahan sa tracing at debugging
  • Automated screenshot at video recording
  • Detalyadong logging upang maidokumento ang testing process at maisagawa ang verification sa ibang pagkakataon

Kongklusyon

  • Pinahuhusay ng AI ang pagbuo ng test case, ngunit napakahalaga ng human verification
  • Nagbibigay ang Playwright ng episyente, flexible, at feature-rich na pagpapatakbo ng test

Pagpapatakbo ng mga Test Case gamit ang mga AI Agent

Task Executor Agent

  • AI agent na nangangasiwa sa execution phase
  • Kinukuha ang mga test parameter mula sa mga nabuong task
  • Gumagawa at nag-iimbak ng mga Playwright script sa database para sa sanggunian sa hinaharap
  • Awtomatikong nagpapatakbo ng mga test

Mga Halimbawa ng AI-Driven Testing gamit ang Playwright

  • Front-end at back-end testing
  • Eksperimento gamit ang Playwright MCP kasama ang Amazon Q developer CLI
  • Tatlong test case para sa isang simpleng e-commerce website:
  • Pagbili ng produkto, paglalagay ng shipment information, at pagkumpleto sa proseso ng order
  • Pag-log in at pagbukas sa product page nang walang karagdagang aksyon
  • Pagdagdag ng produkto sa shopping cart nang walang karagdagang aksyon

Verification Matapos ang Pagpapatakbo

  • Iniimbak ang mga test case sa database
  • Paggamit ng mga feature gaya ng video recording para sa verification sa ibang pagkakataon
  • Maaaring suriin ng mga tester ang mga naka-record na video upang matiyak na naaayon ang mga ito sa inaasahang behavior

Pagbabalik-tanaw sa Kumpletong Test Execution Flow

  • Nagtutulungan ang tatlong AI agent:
  • Test case generator
  • Test case executor
  • Report generator (kumukuha ng mga resulta at recording)
  • Nagbibigay ng flexibility at scalability ang modularized approach

Paggamit ng Maraming MCP

  • Gumamit ng iba't ibang MCP para sa magkakaibang pangangailangan sa testing:
  • MySQL MCP para sa pagbuo ng makatotohanang data
  • Redis MCP para sa pag-iimbak ng mga test case na kamakailang ginamit
  • Pinapasimple ang mga proseso ng testing

Pangunahing Mensahe: Shift-Left Testing

  • Isama ang automated testing sa maagang bahagi ng development cycle
  • Mga benepisyo:
  • Mas mahusay na kalidad
  • Mas episyenteng proseso
  • Mas mababang gastos
  • Mas kaunting technical debt

Kongklusyon

  • Nakakatipid ng oras at gastos ang AI-driven automated testing
  • Nakatuon ang mga tester sa verification, hindi sa pagbuo ng test case