Skip to content
Snippets Groups Projects
Commit 58859d4f authored by W. Spencer Smith's avatar W. Spencer Smith
Browse files

Modifications to L30.

parent 147f7cf8
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -63,8 +63,6 @@
\begin{itemize}
\item Investigating 9 academic integrity cases for A2
\item A3 deadlines
\begin{itemize}
\item Part 2 - Code: due 11:59 pm Mar 20
......@@ -73,6 +71,7 @@
\item A4
\bi
\item Now available in our repo
\item Your own design and specification
\item Due April 3 at 11:59 pm
\ei
......@@ -223,7 +222,8 @@
\item Should be repeatable
\begin{itemize}
\item Repeating the same experiment, we should get the same results
\item Repeatability may not be true because of the effect of the execution environment on testing
\item Repeatability may not be true because of the effect of the execution
environment on testing
\item Repeatability may not occur if there are uninitialized variables
\item Repeatability may not happen when there is nondeterminism
\end{itemize}
......@@ -287,6 +287,25 @@
\item Risks cannot be eliminated, but the development process can reduce the probability of loss associated with risks
to an ``acceptable'' level
\item One approach to risk analysis is FMEA - Failure Mode Effect Analysis
\item Consider the capstone project of the autonomous rescue robots (A3)
\begin{itemize}
\item The final grade is mostly based on the final documentation and the final
demonstration/presentation in front of an industry panel
\item \structure{What are the most significant risks?}
\item \structure{How do you test the robot?}
\item \structure{How should calibration be handled?}
\end{itemize}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Test Plan For Autonomous Rescue Robot}
\begin{itemize}
\item Consider the capstone project of the autonomous rescue robots
\begin{itemize}
\item Largest risk, robot fails during final demonstrations
......@@ -300,6 +319,18 @@ to an ``acceptable'' level
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{White Box Versus Black Box Testing}
\begin{itemize}
\item \structure{Do you know (or can you guess) the difference between white box
and black box testing?}
\item \structure{What if they were labelled transparent box and opaque box
testing, respectively?}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{White Box Versus Black Box Testing}
\begin{itemize}
......@@ -333,6 +364,18 @@ to an ``acceptable'' level
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Dynamic Testing}
\begin{itemize}
\item \structure{Is there a dynamic testing technique that can guarantee
correctness?}
\item \structure{If so, what is the technique?}
\item \structure{Is this technique practical?}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Dynamic Versus Static Testing}
\begin{itemize}
......@@ -369,6 +412,16 @@ validity
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Manual Versus Automated Testing}
\begin{itemize}
\item \structure{What is the difference between manual and automated testing?}
\item \structure{What are the advantages of automated testing?}
\item \structure{What is regression testing?}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Manual Versus Automated Testing}
\begin{itemize}
......@@ -384,7 +437,8 @@ validity
\item Necessary for \structure{regression testing}
\item Test tools can assist, such as Junit, Cppunit, CuTest etc.
\item Can be challenging to automate GUI tests
\item Test suite for Maple has 2 000 000 test cases, run on 14 platforms, every night, automated reporting
\item Test suite for Maple has 2 000 000 test cases, run on 14 platforms, every
night, automated reporting
\end{itemize}
\end{itemize}
\end{frame}
......@@ -414,6 +468,65 @@ validity
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Continuous Integration Testing}
\begin{itemize}
\item \structure{What is continuous integration testing?}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Continuous Integration Testing}
\begin{itemize}
\item Information available on
\href{https://en.wikipedia.org/wiki/Continuous_integration}{Wikipedia}
\item Developers integrate their code into a shared repo frequently (multiple
times a day)
\item Each integration is automatically accompanied by regression tests and
other build tasks
\item Build server
\bi
\item Unit tests
\item Integration tests
\item Static analysis
\item Profile performance
\item Extract documentation
\item Update project web-page
\item Portability tests
\item etc.
\ei
\item Avoids potentially extreme problems with integration when the baseline and
a developer's code greatly differ
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Continuous Integration Tools}
\begin{itemize}
\item Gitlab
\bi
\item Example at
\href{https://gitlab.cas.mcmaster.ca/andrem5/RogueReborn/pipelines}{Rogue
Reborn}
\ei
\item Jenkins
\item Travis
\item \href{https://www.docker.com/}{Docker}
\bi
\item Eliminates the ``it works on my machine'' problem
\item Package dependencies with your apps
\item A container for lightweight virtualization
\item Not a full VM
\ei
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Fault Testing}
\begin{itemize}
......@@ -446,4 +559,25 @@ validity
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Fault Testing Usage Homework}
After completion of a complex software project, two independent groups test
it. The first group finds 300 errors and the second group finds 200 errors. A
comparison of the errors discovered by the two teams shows that they found the
same error in 50 cases. What is the range that estimates the number of errors in
the original software project?
% M1 = 300, M1'=50, N1 = 200, T1 = 1000
% M2 = 200, M2'=50, N2 = 300, T2 = 900
\be[A.]
\item 900--1000 %answer
\item -17--25
\item 600--1500
\item 0--150
\item 150--250
\ee
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment