Presentation is loading. Please wait.

Presentation is loading. Please wait.

Beyond the UI Using Tools to Improve Testing Jeremy Traylor

Similar presentations


Presentation on theme: "Beyond the UI Using Tools to Improve Testing Jeremy Traylor"— Presentation transcript:

1 Beyond the UI Using Tools to Improve Testing Jeremy Traylor Email: jtraylor@salesforce.com

2 Using tools can improve your testing!  Using tools like the ones we will discuss today, you can gain a deeper understanding of the systems you test, and ultimately provide better testing.

3 Agenda  Intro  API Overview  Browser Developer Tools  API Testing Tools  DB Tools  Wrap up (followed by questions)

4 Getting to Know You

5 Getting to Know Me

6 What’s an API?  API stands for Application Programming Interface. API’s allow developers to use predefined functions to interact with the operating system or platform.  While the UI is the customer view of the application the API is the developer view of the application.

7 What Does That Look Like?  URL: https://www.exacttargetapis.com/hub/v1/campaigns/  Method: The action to be taken on the resource  Request Headers: Method, Authorization, Content-Type  Request Body: JSON (JavaScript Object Notation)  For POST, PATCH, PUT  Response Header: Status  Response Body: JSON

8 REST API Methods  POST – Create  PUT – Create/Update  GET – Read  PATCH – Update  DELETE – Delete  This is often an update of a status field or isActive field rather than a true delete  OPTIONS – see methods supported for a route

9 Common HTTP Status Codes  10.2 Successful – 2XX  Examples: 200 OK, 201 Created, 202 Accepted  10.3 Redirection – 3XX  Examples: 301 Moved Permanently, 302 Found, 304 Not Modified  10.4 Client Error – 4XX  Examples: 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 405 Method Not Allowed  10.5 Server Error – 5XX  Examples: 500 Internal Server Error, 501 Not Implemented, 503 Service Unavailable

10 Browser Developer Tools  These tools are built into web browsers to help developers build and debug web applications.  See API’s being called from the UI  See Errors/Investigate Failures  Filtering  for errors, warning in console  For types of request in network tab  Execute JavaScript expressions

11 Developer Tools Reference  Built in dev tools:  Chrome - https://developer.chrome.com/devtools  Firefox - https://developer.mozilla.org/en- US/docs/Tools  IE - https://msdn.microsoft.com/en- us/library/dd565628(v=vs.85).aspx  Add-ons/Extensions:  Firebug - https://getfirebug.com/  Fiddler - http://www.telerik.com/fiddler

12 Why test API’s?  Test scenarios not possible in the UI  Troubleshoot failures observed in the UI  Test many scenarios quickly  Test before UI is available (or if unavailable)  Better understanding of middle tier

13 API Testing Tools Reference  Postman - https://www.getpostman.com/  SOAP UI - http://www.soapui.org/about- soapui/what-is-soapui-.html  Advanced Rest Client - https://chrome.google.com/webstore/search/adva nced%20rest%20client  Parasoft SOAtest - http://www.parasoft.com/product/soatest/ http://www.parasoft.com/product/soatest/  Jsonlint.com – check/format valid json

14 DB Tools or Database Management Systems (DBMS)  These tools allow you to interact with the databases utilized by your application.  Use select statements to read data from the DB  “Describe” type statements to find information on fields in a table such as names, data types, length, etc  Better understanding of system

15 Basic SQL  SELECT TOP (10) * FROM [TABLENAME] ORDER BY [FIELDNAME]  SELECT * FROM [TABLENAME] WHERE [FIELDNAME] = [VALUE]  SELECT [FIELDNAME1], [FIELDNAME2] FROM [TABLENAME] WHERE [FIELDNAME3] = [VALUE] OR [FIELDNAME4] = [VALUE]  SELECT TN1.[FIELDNAME1], TN2.[FIELDNAME2] FROM [TABLENAME1] TN1, [TABLENAME2] TN2 WHERE TN1.[FIELDNAME3] = TN2.[FIELDNAME4]

16 DB Tools Reference  SQL Fiddle - sqlfiddle.com  SQL Server Management Studio  https://www.microsoft.com/en-us/download/details.aspx?id=8961  MySQL  http://www.mysql.com/  TOAD  http://software.dell.com/products/toad-for-oracle/  MS Access  https://products.office.com/en-us/access

17 So…What Now?  Open up the developer tools when testing in a browser  Download and try an API testing tool  Get access to and gain familiarity with the DB tool used where you work


Download ppt "Beyond the UI Using Tools to Improve Testing Jeremy Traylor"

Similar presentations


Ads by Google