<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://script.spoken-tutorial.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=Python-3.4.3%2FC4%2FTesting-and-Debugging%2FEnglish</id>
		<title>Python-3.4.3/C4/Testing-and-Debugging/English - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=Python-3.4.3%2FC4%2FTesting-and-Debugging%2FEnglish"/>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;action=history"/>
		<updated>2026-04-29T18:19:40Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.17</generator>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;diff=45025&amp;oldid=prev</id>
		<title>Nancyvarkey at 05:14, 2 November 2018</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;diff=45025&amp;oldid=prev"/>
				<updated>2018-11-02T05:14:57Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;amp;diff=45025&amp;amp;oldid=44901&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Nancyvarkey</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;diff=44901&amp;oldid=prev</id>
		<title>Nirmala Venkat at 07:49, 24 October 2018</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;diff=44901&amp;oldid=prev"/>
				<updated>2018-10-24T07:49:34Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 07:49, 24 October 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 329:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 329:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| We choose a name so that it becomes easier to understand its usage. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| We choose a name so that it becomes easier to understand its usage. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Let’s look at this with an example.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Nirmala Venkat</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;diff=44897&amp;oldid=prev</id>
		<title>Priyacst: Created page with &quot;'''Title of script''': '''Testing and debugging'''  '''Author: Puneeth, Thirumalesh H S, Arun KP'''  '''Keywords: Python, Ipython, testing, debugging, automate test, coding st...&quot;</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=Python-3.4.3/C4/Testing-and-Debugging/English&amp;diff=44897&amp;oldid=prev"/>
				<updated>2018-10-24T06:19:58Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;#039;&amp;#039;&amp;#039;Title of script&amp;#039;&amp;#039;&amp;#039;: &amp;#039;&amp;#039;&amp;#039;Testing and debugging&amp;#039;&amp;#039;&amp;#039;  &amp;#039;&amp;#039;&amp;#039;Author: Puneeth, Thirumalesh H S, Arun KP&amp;#039;&amp;#039;&amp;#039;  &amp;#039;&amp;#039;&amp;#039;Keywords: Python, Ipython, testing, debugging, automate test, coding st...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''Title of script''': '''Testing and debugging'''&lt;br /&gt;
&lt;br /&gt;
'''Author: Puneeth, Thirumalesh H S, Arun KP'''&lt;br /&gt;
&lt;br /&gt;
'''Keywords: Python, Ipython, testing, debugging, automate test, coding style, python community, video tutorial'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| '''Visual Cue'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| '''Narration'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide title&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Welcome to the spoken tutorial on '''Testing and debugging'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide &lt;br /&gt;
&lt;br /&gt;
Objectives &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| In this tutorial, you will, &lt;br /&gt;
&lt;br /&gt;
* Understand what is '''software''' '''testing'''&lt;br /&gt;
* Test simple '''functions''' for their '''functionality''' &lt;br /&gt;
* '''Automate''' '''tests''' &lt;br /&gt;
* Understand the need for '''coding''' '''style''' and&lt;br /&gt;
* Learn some of the '''standards''' followed by the '''Python''' '''Community'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide &lt;br /&gt;
&lt;br /&gt;
System Specifications &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| To record this tutorial, I am using &lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux 16.04''' operating system&lt;br /&gt;
* '''Python 3.4.3'''&lt;br /&gt;
* '''IPython 5.1.0''' and&lt;br /&gt;
* '''Gedit text editor'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide &lt;br /&gt;
&lt;br /&gt;
Prerequisite &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| To practise this tutorial, you should know how to &lt;br /&gt;
&lt;br /&gt;
* use''' functions.'''&lt;br /&gt;
&lt;br /&gt;
If not, see the relevant '''Python''' tutorials on this website.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Software Testing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| First we will learn about software testing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Software''' '''testing''' is the process to evaluate the functionality of a software or a '''program.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It helps to find whether the program met the specified requirements or not.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It ensures a defect free program so that we will get a quality program.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show slide:&lt;br /&gt;
&lt;br /&gt;
Source code&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| All the codes used in this tutorial are available in the '''Code Files''' link of this tutorial.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should download in the current working directory and use them.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| gcd function &lt;br /&gt;
&lt;br /&gt;
'''def gcd(a, b): if b == 0:''' ''' return a'''  '''return gcd(b, a%b)'''&lt;br /&gt;
&lt;br /&gt;
Highlight def gcd(a,b):''' '''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Open any text editor and type the following code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is a simple '''function''' to calculate '''gcd''' of two numbers. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We need a set of '''inputs''' for the variable a and b.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Save the file find_gcd.py&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Save the file as '''find''''' underscore '''''gcd.py '''in the current working '''directory'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| '''Open '''the''' file test_gcd.py'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Next we will open''' '''the''' '''file''' test''''' underscore '''''gcd.py.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| '''from find_gcd import gcd'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''if __name__ == '__main__':'''&lt;br /&gt;
&lt;br /&gt;
'''result = gcd(48, 64)'''&lt;br /&gt;
&lt;br /&gt;
'''if result != 16:'''&lt;br /&gt;
&lt;br /&gt;
'''print(&amp;quot;Test failed&amp;quot;)'''&lt;br /&gt;
&lt;br /&gt;
'''print(&amp;quot;Test Passed&amp;quot;)'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Let our test case be 48 and 64 as '''''a''' ''and '''''b.'''''&lt;br /&gt;
&lt;br /&gt;
For this test case we know that the GCD is 16. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So that is the expected '''output'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| &amp;lt;nowiki&amp;gt;[Terminal]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''python3 test_gcd.py'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Let us now run the '''script''' and '''test''' our '''code'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open the terminal and type &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''python3 test''''' underscore '''''gcd.py'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We get the '''output''' as '''''Test''' '''Passed'''' which means our '''code''' is correct.''' '''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| But there can be a number of cases where the '''gcd''' '''function''' might break. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Slide: Test cases&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| So to check where our code is breaking we should run many tests.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is where the concept of automating tests comes in.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Open the file '''testcases.txt''' and show &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Let us first try and automate tests on the '''gcd''' '''function.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open the file''' textcases.txt''' where the various testing parameters are given.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Open '''testcases.txt'''&lt;br /&gt;
&lt;br /&gt;
12 28 4 &lt;br /&gt;
&lt;br /&gt;
18 36 18 &lt;br /&gt;
&lt;br /&gt;
4678 39763 2339 &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| The structure of the file will have two '''input''' '''parameters'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The third '''parameter''' is the correct '''output''' '''result'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We have separated the elements by a space.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Open '''automate_test_gcd.py'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Next let us open the file''' automate''''' underscore '''''test''''' underscore '''''gcd.py'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| '''Highlight the code:'''&lt;br /&gt;
&lt;br /&gt;
from find_gcd import gcd&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
if __name__ == '__main__':&lt;br /&gt;
&lt;br /&gt;
for line in open('testcases.txt'):&lt;br /&gt;
&lt;br /&gt;
numbers = line.split()&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;x, y = int(numbers[0]) , int(numbers[1])&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;result = int(numbers[2])&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
if gcd(x, y) != result:&lt;br /&gt;
&lt;br /&gt;
print (&amp;quot;Failed gcd test for&amp;quot;, x, y)&lt;br /&gt;
&lt;br /&gt;
else:&lt;br /&gt;
&lt;br /&gt;
print (&amp;quot;Test passed&amp;quot;, result)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| First we need '''import gcd''' function from '''find''''' underscore '''''gcd''' in order to use it for testing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next the '''testcases.txt '''file is read line by line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The first two '''input''' '''parameters''' are assigned to the variables '''x '''and''' y. '''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The third '''parameter''' which is the correct '''output''' value is assigned to the variable '''result'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We check whether the value returned by the '''gcd function '''is equal to the value in the variable''' result.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally it prints the message accordingly.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| In the '''terminal, '''type&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''python3 automate_test_gcd.py'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| In the '''terminal, '''type&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''python3 automate''''' underscore '''''test''''' underscore '''''gcd.py'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Point to the output&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| As you can see, all the three test cases in '''testcases.txt''' are passed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The value calculated by the gcd function is equal to the output value provided in the '''testcases.txt.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Pause the video. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Try this exercise and then resume the video. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide''' '''&lt;br /&gt;
&lt;br /&gt;
Assignment 1 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| For the same inputs as '''gcd''' write '''automated''' '''tests''' for '''LCM'''. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use the data from the file '''lcmtestcases.txt'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Switch terminal&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Switch to the terminal for the solution.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Open the find_lcm.py&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open '''lcmtestcases.txt'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Let us see the code to calculate '''lcd''' of two numbers. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The file name is '''find''' ''underscore'' '''lcm.py'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the data file for the '''lcm''' test cases.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This file name is '''lcmtestcases.txt'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note that both these files should be in the current working directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Let us now run the '''script''' and '''test''' our '''code'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Type '''python3 find_lcm.py'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Type '''python3 find''''' underscore '''''lcm.py'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Open '''find_lcm.py '''and show.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;[Terminal]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''python3 find_lcm.py'''&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Here, the third test case failed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Because the corresponding input in '''lcmtestcases.txt''' is incorrect.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is to check the behavior of the program on incorrect conditions.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Coding Style&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| * A good '''program''' should be '''readable.'''&lt;br /&gt;
* So others can extend and improve it. &lt;br /&gt;
* '''Code''' is read more often than it is written. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Meaningfull names &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| We choose a name so that it becomes easier to understand its usage. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Let’s look at this with an example.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As we can see in the example,&lt;br /&gt;
&lt;br /&gt;
it is very easy to understand what the '''code''' is doing. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Proper naming helps so much in understanding the '''code'''. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Coding Instructions&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Also one should keep in mind the following things while writing a code in Python.&lt;br /&gt;
&lt;br /&gt;
* '''Four Space Indentation '''&lt;br /&gt;
* 79 characters limit on a line&lt;br /&gt;
* '''Functions''' and '''methods''' should be separated with two '''blank''' '''lines'''. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Code Instructions&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| * Use '''Docstring''' to document a specific segment of code.&lt;br /&gt;
* Use '''whitespace''' around '''operators''' and after punctuations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Summary &lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| This brings us to the end of this tutorial. Let us summarize. &lt;br /&gt;
&lt;br /&gt;
In this tutorial, we have learnt to, &lt;br /&gt;
&lt;br /&gt;
* Create simple '''tests''' for a '''function'''&lt;br /&gt;
* '''Automate''' '''tests''' using many '''predefined''' '''test''' '''cases''' and&lt;br /&gt;
* Use '''python''' '''coding''' '''standards'''. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide &lt;br /&gt;
&lt;br /&gt;
Self assessment questions&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Here is a self assessment question for you to solve &lt;br /&gt;
&lt;br /&gt;
# What is the proper indentation for python code according to the style guidelines? &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide Solutions&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| And the answer, &lt;br /&gt;
&lt;br /&gt;
# '''Four''' '''Space''' '''Indentation''' is required for writing a python code according to the style guidelines. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide Forum&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Please post your timed queries in this forum.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide Fossee Forum&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Please post your general queries on Python in this forum.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Slide Textbook Companion&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding:0.106cm;&amp;quot;| FOSSEE team coordinates the TBC project.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Show Slide&lt;br /&gt;
&lt;br /&gt;
Acknowledgment&lt;br /&gt;
&lt;br /&gt;
http://spoken-tutorial.org&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Spoken Tutorial Project is funded by NMEICT, MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
For more details, visit this website.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| Previous slide&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.5pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.097cm;padding-right:0.191cm;&amp;quot;| This is Priya from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for watching.&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Priyacst</name></author>	</entry>

	</feed>