testing-debugging/slides.org
changeset 457 68813d8d80fb
parent 403 9858ca9e3f93
child 487 cb3974daced5
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/testing-debugging/slides.org	Thu Nov 11 02:28:55 2010 +0530
@@ -0,0 +1,86 @@
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [presentation]
+#+BEAMER_FRAME_LEVEL: 1
+
+#+BEAMER_HEADER_EXTRA: \usetheme{Warsaw}\usecolortheme{default}\useoutertheme{infolines}\setbeamercovered{transparent}
+#+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_envargs(Env Args) %4BEAMER_col(Col) %8BEAMER_extra(Extra)
+#+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 :ETC
+
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [presentation]
+
+#+LaTeX_HEADER: \usepackage[english]{babel} \usepackage{ae,aecompl}
+#+LaTeX_HEADER: \usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet}
+
+#+LaTeX_HEADER: \usepackage{listings}
+
+#+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries,
+#+LaTeX_HEADER:  commentstyle=\color{red}\itshape, stringstyle=\color{red},
+#+LaTeX_HEADER:  showstringspaces=false, keywordstyle=\color{blue}\bfseries}
+
+#+TITLE:     Testing and debugging
+#+AUTHOR:    FOSSEE
+#+EMAIL:     
+#+DATE:    
+
+#+DESCRIPTION: 
+#+KEYWORDS: 
+#+LANGUAGE:  en
+#+OPTIONS:   H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc
+
+* Outline 
+  - What software Testing is? 
+  - Learn to test simple functions for their functionality.
+  - Learn how to automate tests. 
+  -  Need for coding style and some of the standards followed by the Python Community.
+  -  Handling Errors and Exceptions.
+
+
+* gcd function
+  - Create gcd.py file with:
+#+begin_LaTeX
+\begin{lstlisting}[language=python]
+  def gcd(a, b):
+        if a % b == 0: 
+            return b
+        return gcd(b, a%b)
+\end{lstlisting}
+#+end_LaTeX
+
+* Test for gcd.py
+  - Edit gcd.py file
+#+begin_LaTeX
+\begin{lstlisting}[language=python]
+
+  def gcd(a, b):
+      if b == 0:
+          return a
+      return gcd(b, a%b)
+  
+  if __name__=='__main__':
+      result = gcd(48, 64)
+      if result != 16:
+          print "Test failed"
+      print "Test Passed"
+\end{lstlisting}
+#+end_LaTeX
+
+* Automating tests
+#+begin_LaTeX
+\begin{lstlisting}[language=python]
+
+    if __name=__='__main__':
+    for line in open('numbers.txt'):
+        numbers = line.split()
+        x = int(numbers[0])
+        y = int(numbers[1])
+        result = int(numbers[2])
+        if gcd(x, y) != result:
+            print "Failed gcd test
+                          for", x, y
+\end{lstlisting}
+#+end_LaTeX
+
+
+