CINXE.COM
Testing | Europe PMC Tech Blog
<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="UTF-8"> <link type="application/atom+xml" rel="alternate" href="https://europepmc.github.io/techblog/feed.xml" title="Europe PMC Tech Blog" /> <!-- Begin Jekyll SEO tag v2.7.1 --> <title>Testing | Europe PMC Tech Blog</title> <meta name="generator" content="Jekyll v3.9.0" /> <meta property="og:title" content="Testing" /> <meta property="og:locale" content="en_US" /> <meta name="description" content="Techy stuff from Europe PMC" /> <meta property="og:description" content="Techy stuff from Europe PMC" /> <link rel="canonical" href="https://europepmc.github.io/techblog/categories/testing/" /> <meta property="og:url" content="https://europepmc.github.io/techblog/categories/testing/" /> <meta property="og:site_name" content="Europe PMC Tech Blog" /> <meta property="og:type" content="article" /> <meta property="article:published_time" content="2022-03-01T15:22:13+00:00" /> <meta name="twitter:card" content="summary" /> <meta property="twitter:title" content="Testing" /> <script type="application/ld+json"> {"description":"Techy stuff from Europe PMC","headline":"Testing","url":"https://europepmc.github.io/techblog/categories/testing/","dateModified":"2022-03-01T15:22:13+00:00","@type":"BlogPosting","datePublished":"2022-03-01T15:22:13+00:00","mainEntityOfPage":{"@type":"WebPage","@id":"https://europepmc.github.io/techblog/categories/testing/"},"@context":"https://schema.org"}</script> <!-- End Jekyll SEO tag --> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="theme-color" content="#157878"> <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700' rel='stylesheet' type='text/css'> <link rel="stylesheet" href="/techblog/assets/css/style.css?v=99af2fde682c7a20c7f4457b97c1b3da781ebef0"> <link rel="shortcut icon" type="image/x-icon" href="/techblog/favicon.ico"> <!-- Twitter cards --> <meta name="twitter:site" content="@EuropePMC_news"> <meta name="twitter:creator" content="@"> <meta name="twitter:title" content="Testing"> <meta name="twitter:description" content="Techy stuff from Europe PMC"> <meta name="twitter:card" content="summary"> <meta name="twitter:image" content="https://europepmc.github.io/techblog/images/epmc-techblog_larger.png"> <!-- end of Twitter cards --> </head> <body> <section class="page-header"> <h1 class="project-name"><a href="/techblog/"><img src="/techblog/images/epmc-techblog.png" style="border:0">Europe PMC Tech Blog</a></h1> <!--<h2 class="project-tagline">Techy stuff from Europe PMC</h2> <a href="https://github.com/EuropePMC/techblog" class="btn">View on GitHub</a> --> <a href="/techblog/" class="btn">Home</a> <a href="/techblog/about" class="btn">About</a> <a href="/techblog/categories" class="btn">Post Categories</a> <a href="https://europepmc.org" class="btn epmc" target="_blank">Europe PMC</a> </section> <section class="main-content"> <h1>Posts in Category: Testing</h1> <section class="post-excerpt"> <p class="post-excerpt-date">08 Mar 2018</p><h2 class="post-excerpt-title"><a href="/techblog/testing/2018/03/08/importance-of-software-testing-in-ci-cd.html">The Importance of Software Testing in DevOps</a></h2> <p>Software testing is the process of identifying the correctness and quality of a software program. In other words, testing is executing a system or application in order to find software bugs, defects, errors or unexpected behavior.</p> <p>Software testing is necessary because we all make mistakes. Some of those mistakes are minor, but others can be expensive or dangerous. Especially while practicing <a href="https://www.atlassian.com/continuous-delivery/ci-vs-ci-vs-cd">continuous integration, continuous delivery, or continuous deployment</a>, we need to test anything and everything we produce, because things can always go wrong.</p> <p>Testing is mainly classified into two types, <strong>Functional Testing</strong> and <strong>Non-functional Testing</strong>.</p> <p><a href="/techblog/images/posts/importance-of-software-testing-in-ci-cd/TEST1.JPG"><img src="/techblog/images/posts/importance-of-software-testing-in-ci-cd/TEST1.JPG" alt="Types of Functional and Non-functional testing" /></a></p> <div class="excerpt-bottom"> <p class="continue"><a href="/techblog/testing/2018/03/08/importance-of-software-testing-in-ci-cd.html">Continue reading ›</a></p> <p class="metadata">Author: <a href="https://github.com/rakeshnambiar" target ="_blank">Rakesh Nambiar</a></p> </div> </section> <section class="post-excerpt"> <p class="post-excerpt-date">29 Jan 2018</p><h2 class="post-excerpt-title"><a href="/techblog/testing/2018/01/29/behavior-driven-development-in-bioinformatics.html">Behavior-Driven Development in Bioinformatics</a></h2> <h3 id="what-is-bdd">What is BDD?</h3> <p><strong>Behavior-Driven Development (BDD)</strong> is a set of Software Engineering practices designed to help teams deliver more valuable and higher quality software features.</p> <p>It adopts general techniques and principles of <a href="https://en.wikipedia.org/wiki/Test-driven_development">Test Driven Development</a> (TDD) with ideas from <a href="https://en.wikipedia.org/wiki/Domain-driven_design">Domain-driven Design</a> (DDD). BDD incrementally builds functionality guided by expected behavior.</p> <p>A simple BDD scenario / requirement is as follows:</p> <figure class="highlight"><pre><code class="language-java" data-lang="java"> <span class="nd">@TC01_EPMC_SearchTest</span> <span class="nl">Scenario:</span> <span class="nc">Specific</span> <span class="nc">Search</span> <span class="n">by</span> <span class="nc">Keyword</span> <span class="nc">Given</span> <span class="no">I</span> <span class="n">am</span> <span class="n">researcher</span> <span class="nc">When</span> <span class="no">I</span> <span class="n">open</span> <span class="n">the</span> <span class="err">'</span><span class="nc">Europe</span> <span class="no">PMC</span><span class="err">'</span> <span class="nc">Website</span> <span class="nc">And</span> <span class="nc">Enter</span> <span class="n">the</span> <span class="n">keyword</span> <span class="s">"Glycosyl transferases"</span> <span class="n">on</span> <span class="n">the</span> <span class="nc">Query</span> <span class="n">field</span> <span class="nc">And</span> <span class="nc">Click</span> <span class="n">on</span> <span class="n">the</span> <span class="nc">Search</span> <span class="n">button</span> <span class="nc">Then</span> <span class="no">I</span> <span class="n">should</span> <span class="n">be</span> <span class="n">able</span> <span class="n">to</span> <span class="n">see</span> <span class="n">the</span> <span class="n">matching</span> <span class="n">results</span> <span class="n">on</span> <span class="n">the</span> <span class="nc">Search</span> <span class="nc">Result</span> <span class="n">page</span></code></pre></figure> <div class="excerpt-bottom"> <p class="continue"><a href="/techblog/testing/2018/01/29/behavior-driven-development-in-bioinformatics.html">Continue reading ›</a></p> <p class="metadata">Author: <a href="https://github.com/rakeshnambiar" target ="_blank">Rakesh Nambiar</a></p> </div> </section> <footer class="site-footer"> <span class="site-footer-owner"><a href="https://github.com/EuropePMC/techblog">techblog</a> is maintained by <a href="https://github.com/EuropePMC">EuropePMC</a>.</span> <span class="site-footer-credits">This page was generated by <a href="https://pages.github.com">GitHub Pages</a>.</span> </footer> </section> <script type="text/javascript"> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-114538088-1', 'auto'); ga('send', 'pageview'); </script> </body> </html>