What We Do

Codoid, software testing company, has been a strategic testing partner for various organizations. We have helped organizations new to Agile in the following areas: Agile Test Strategy, Agile Test Approaches, Exploratory Testing, Functional Testing, Test Automation and more. We specialize in market leading software testing tools.

EXPLORATORY TESTING

Exploratory testing is not sitting down at a keyboard and typing away. Unskilled black box testers may not know how to do exploratory testing. Exploratory testing combines test design with test execution and focuses on learning about the application under test.

Read More

WEB APPLICATION AUTOMATION TESTING

Codoid’s web application automation testing services include creating robust automated regression suite using the tools like Selenium, Protractor & CodeceptJS and test automation framework design.
We at Codoid maintain Selenium regression suites of various products and all our clients make changes to their application code fearlessly.

Read More

ETL TESTING SERVICES

Codoid’s ETL & Data Warehouse testing services include source to target and data completeness validations. An ETL tool Extracts the data from heterogeneous data sources (like relational databases, CSV, spreadsheets, etc.), Transforms the data (applying calculations, mapping data fields, etc.), and Loads it into a Data Warehouse system. You can then use various Business Intelligence (BI) tools to generate meaningful reports, dashboards, and visualizations.

Read More

PERFORMANCE TESTING

If an end user perceives bad performance from your website, her next click will likely be on your competitor website. Badly performing applications generally don’t deliver their intended benefit to an organization. Codoid’s performance testing services include supporting while setting up performance test environment, scripting & executing performance test cases, analyzing the execution report and preparing a comprehensive report.

Read More

Global Impact

325
Sites Tested
55
Amazing Testers
42
Clients Worldwide
86
Mobile Apps Tested

Clients

Want to work with us?

Blog

Codoid, software testing company, has been a strategic testing partner for various organizations. We have helped organizations new to Agile in the following areas: Agile Test Strategy, Agile Test Approaches, Exploratory Testing, Functional Testing, Test Automation and more. We specialize in market leading software testing tools.

Learning Exploratory Testing from Carl

When I was coaching my team on how to create robust automated regression suite and reduce false positives, I posted the below question to them. "What are you going to achieve once you automate regression testing?" Answers from the team:
  • It reduces testing time.
  • Automated testing eliminates errors. The testing is done exactly the same way every time.
  • We will get more time to perform exploratory testing.
  • I was attracted with the last answer and asked another question. "What is exploratory testing?" That's it. The entire room was silent. I was surprised. Why the team was not able to answer it. I took the blame. As a QA manager, I failed to teach the skills which were required when we were transitioning from traditional one to Agile environment. I answered the question with the following definition.
    Exploratory testing is an approach to software testing that is concisely described as simultaneous learning, test design and test execution.-Cem Kaner
    However, I wanted to give an interesting example for exploratory testing. I opened YouTube, played "Up Married Life Carl Ellie" clip from the animation movie UP and asked them to watch it carefully.
    After watching the clip, a few of them cried. However, I spotted a lesson in this video. If you watch the clip from 0.47 to 0.56, Carl didn't know the lifting capacity of the helium balloons and misjudged it when he was young.
    Experienced Carl
    Once Carl is experienced and has become old, now he is able to judge the helium balloon cart. Just see where his elbow is going on after handing over the balloon to the boy. He is moving the elbow where the cart is coming instead of its original position. He has learned it from his experience. He knows what will happen if a balloon is removed from the cart. A skilled exploratory tester should know more about the application he/she tests.
    Exploratory testing combines test design with test execution and focuses on learning the application under test.
    Written by: Asiq Ahamed

    Learning Exploratory Testing from Carl

    When I was coaching my team on how to create robust automated regression suite and reduce false positives, I posted the below question to them. "What are you going to achieve once you automate regression testing?" Answers from the team:
  • It reduces testing time.
  • Automated testing eliminates errors. The testing is done exactly the same way every time.
  • We will get more time to perform exploratory testing.
  • I was attracted with the last answer and asked another question. "What is exploratory testing?" That's it. The entire room was silent. I was surprised. Why the team was not able to answer it. I took the blame. As a QA manager, I failed to teach the skills which were required when we were transitioning from traditional one to Agile environment. I answered the question with the following definition.
    Exploratory testing is an approach to software testing that is concisely described as simultaneous learning, test design and test execution.-Cem Kaner
    However, I wanted to give an interesting example for exploratory testing. I opened YouTube, played "Up Married Life Carl Ellie" clip from the animation movie UP and asked them to watch it carefully.
    After watching the clip, a few of them cried. However, I spotted a lesson in this video. If you watch the clip from 0.47 to 0.56, Carl didn't know the lifting capacity of the helium balloons and misjudged it when he was young.
    Experienced Carl
    Once Carl is experienced and has become old, now he is able to judge the helium balloon cart. Just see where his elbow is going on after handing over the balloon to the boy. He is moving the elbow where the cart is coming instead of its original position. He has learned it from his experience. He knows what will happen if a balloon is removed from the cart. A skilled exploratory tester should know more about the application he/she tests.
    Exploratory testing combines test design with test execution and focuses on learning the application under test.
    Written by: Asiq Ahamed

    Collecting Network Events using Selenium WebDriver

    Collecting Network Events using Selenium WebDriver is simple, you just need to enable performance logging in Chrome Desired capabilities. Once you enable Performance Log, Timeline, Network, and Page events can be collected.

    Enabling Logging in Desired Capabilities
    DesiredCapabilities caps = DesiredCapabilities.chrome();
    LoggingPreferences logPrefs = new LoggingPreferences();
    logPrefs.enable(LogType.PERFORMANCE, Level.INFO);
    caps.setCapability(CapabilityType.LOGGING_PREFS, logPrefs);
    Collecting Network Events
    WebDriver driver=new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), caps);
    
    driver.get("https://codoid.com/about-codoid/");
    
    List<LogEntry> entries = driver.manage().logs().get(LogType.PERFORMANCE).getAll();
    System.out.println(entries.size() + " " + LogType.PERFORMANCE + " log entries found");
    for (LogEntry entry : entries) {
              System.out.println(new Date(entry.getTimestamp()) + " " + entry.getLevel() + " " + entry.getMessage());
    }

    Note

    If tracing is enabled, `ChromeDriver` will start a browser-wide trace when Chrome is launched, and will continue tracing until Chrome closes.

    Collecting Network Events using Selenium WebDriver

    Collecting Network Events using Selenium WebDriver is simple, you just need to enable performance logging in Chrome Desired capabilities. Once you enable Performance Log, Timeline, Network, and Page events can be collected.

    Enabling Logging in Desired Capabilities
    DesiredCapabilities caps = DesiredCapabilities.chrome();
    LoggingPreferences logPrefs = new LoggingPreferences();
    logPrefs.enable(LogType.PERFORMANCE, Level.INFO);
    caps.setCapability(CapabilityType.LOGGING_PREFS, logPrefs);
    Collecting Network Events
    WebDriver driver=new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), caps);
    
    driver.get("https://codoid.com/about-codoid/");
    
    List<LogEntry> entries = driver.manage().logs().get(LogType.PERFORMANCE).getAll();
    System.out.println(entries.size() + " " + LogType.PERFORMANCE + " log entries found");
    for (LogEntry entry : entries) {
              System.out.println(new Date(entry.getTimestamp()) + " " + entry.getLevel() + " " + entry.getMessage());
    }

    Note

    If tracing is enabled, `ChromeDriver` will start a browser-wide trace when Chrome is launched, and will continue tracing until Chrome closes.

    Reading Excel File Using JavaScript

      In this blog post, you will learn how to read Excel file using JavaScript. exceljs, JavaScript Excel Library, reads, manipulates and writes spreadsheet data and styles to XLSX and JSON. We have used Apache POI, Fillo and JXL Excel Java libraries for automation testing. However, Reading and manipulating Excel file in JavaScript is very interesting.

    Installation

    You can install exceljs Excel Workbook Manager with the below npm install command. `npm install exceljs`

    Code

    //Read a file
    var workbook = new Excel.Workbook();
    workbook.xlsx.readFile("data/Sample.xlsx").then(function () {
                
    //Get sheet by Name
    var worksheet=workbook.getWorksheet('Sheet1');
                
    //Get Lastrow
    var row = worksheet.lastRow
                
    //Update a cell
    row.getCell(1).value = 5;
    
    row.commit();
    
    //Save the workbook
    return workbook.xlsx.writeFile("data/Sample.xlsx");
    
    });
    You can also read and write CSV file. Refer: Reading CSV and Writing CSV

    Reading Excel File Using JavaScript

      In this blog post, you will learn how to read Excel file using JavaScript. exceljs, JavaScript Excel Library, reads, manipulates and writes spreadsheet data and styles to XLSX and JSON. We have used Apache POI, Fillo and JXL Excel Java libraries for automation testing. However, Reading and manipulating Excel file in JavaScript is very interesting.

    Installation

    You can install exceljs Excel Workbook Manager with the below npm install command. `npm install exceljs`

    Code

    //Read a file
    var workbook = new Excel.Workbook();
    workbook.xlsx.readFile("data/Sample.xlsx").then(function () {
                
    //Get sheet by Name
    var worksheet=workbook.getWorksheet('Sheet1');
                
    //Get Lastrow
    var row = worksheet.lastRow
                
    //Update a cell
    row.getCell(1).value = 5;
    
    row.commit();
    
    //Save the workbook
    return workbook.xlsx.writeFile("data/Sample.xlsx");
    
    });
    You can also read and write CSV file. Refer: Reading CSV and Writing CSV

    About Codoid

    Codoid has provided Software QA and Test Automation Services across multiple domains & industries, serving 25+ customers. Our experience is exhibited through more than 200+ successfully completed projects, unique automation testing process and approach.