B4M36ZKS - GIT - B191
Vlastní kurzOsnova témat
-
Cílem předmětu je seznámit studenty s technikami testování a zajištění kvality software. Po úvodu do metodiky testování si studenti osvojí techniky pro vytváření testů z modelu aplikace, které jsou základem návrhu jak manuálních, tak automatických testů. Poté se naučí vytvářet efektivní jednotkové testy kódu a seznámí se s technikami automatického testování na různých úrovních. Závěrečná část předmětu se poté zabývá úvodem do formálních verifikací vytvářeného software.
The goal of this course is to learn efficient software quality assurance and testing methods. This includes description of QA processes in the software development lifecycle, techniques of efficient design of test scenarios, introduction to model-based-testing, design and implementation of unit tests and integration tests and imlementation of automated tests based on simulation of user's actions in the tested system.
Markdown demo
An h1 header
Paragraphs are separated by a blank line.
2nd paragraph. Italic, bold, and
monospace
. Itemized lists look like:- this one
- that one
- the other one
Note that --- not considering the asterisk --- the actual text content starts at 4-columns in.
Block quotes are written like so.
They can span multiple paragraphs, if you like.
Use 3 dashes for an em-dash. Use 2 dashes for ranges (ex., "it's all in chapters 12--14"). Three dots ... will be converted to an ellipsis. Unicode is supported. ☺
An h2 header
Here's a numbered list:
- first item
- second item
- third item
Note again how the actual text starts at 4 columns in (4 characters from the left side). Here's a code sample:
# Let me re-iterate ... for i in 1 .. 10 { do-something(i) }
As you probably guessed, indented 4 spaces. By the way, instead of indenting the block, you can use delimited blocks, if you like:
define foobar() { print "Welcome to flavor country!"; }
(which makes copying & pasting easier). You can optionally mark the delimited block for Pandoc to syntax highlight it:
import time # Quick, count to ten! for i in range(10): # (but not *too* quick) time.sleep(0.5) print(i)
An h3 header
Now a nested list:
First, get these ingredients:
- carrots
- celery
- lentils
Boil some water.
Dump everything in the pot and follow this algorithm:
find wooden spoon uncover pot stir cover pot balance wooden spoon precariously on pot handle wait 10 minutes goto first step (or shut off burner when done)
Do not bump wooden spoon or it will fall.
Notice again how text always lines up on 4-space indents (including that last line which continues item 3 above).
Here's a link to a website, to a local doc, and to a section heading in the current doc. Here's a footnote 1.
Tables can look like this:
Name Size Material Color
All Business 9 leather brown Roundabout 10 hemp canvas natural Cinderella 11 glass transparent
Table: Shoes sizes, materials, and colors.
(The above is the caption for the table.) Pandoc also supports multi-line tables:
Keyword Text
red Sunsets, apples, and other red or reddish things.
green Leaves, grass, frogs and other things it's not easy being.
A horizontal rule follows.
Here's a definition list:
- apples
- Good for making applesauce.
- oranges
- Citrus!
- tomatoes
- There's no "e" in tomatoe.
Again, text is indented 4 spaces. (Put a blank line between each term and its definition to spread things out more.)
Here's a "line block" (note how whitespace is honored):
| Line one | Line too | Line tree
and images can be specified like so:
Inline math equation: $\omega = d\phi / dt$. Display math should get its own line like so:
\(I = \int \rho R^{2} dV\)
And note that you can backslash-escape any punctuation characters which you wish to be displayed literally, ex.: `foo`, *bar*, etc.
Features
- Support Standard Markdown / CommonMark and GFM(GitHub Flavored Markdown);
- Full-featured: Real-time Preview, Image (cross-domain) upload, Preformatted text/Code blocks/Tables insert, Code fold, Search replace, Read only, Themes, Multi-languages, L18n, HTML entities, Code syntax highlighting...;
- Markdown Extras : Support ToC (Table of Contents), Emoji, Task lists, @Links...;
- Compatible with all major browsers (IE8+), compatible Zepto.js and iPad;
- Support identification, interpretation, fliter of the HTML tags;
- Support TeX (LaTeX expressions, Based on KaTeX), Flowchart and Sequence Diagram of Markdown extended syntax;
- Support AMD/CMD (Require.js & Sea.js) Module Loader, and Custom/define editor plugins;
Editor.md
Table of Contents
[TOCM]
[TOC]
H1 header
H2 header
H3 header
H4 header
H5 header
H6 header
Heading 1 link Heading link
Heading 2 link Heading link
Heading 3 link Heading link
Heading 4 link Heading link Heading link Heading link
Heading 5 link Heading link
Heading 6 link Heading link
Headers (Underline)
H1 Header (Underline)
H2 Header (Underline)
Characters
~~Strikethrough~~
Strikethrough (when enable html tag decode.)Italic Italic Emphasis Emphasis Emphasis Italic Emphasis ItalicSuperscript: X2,Subscript: O2
Abbreviation(link HTML abbr tag)
The HTML specification is maintained by the W3C.
Blockquotes
Blockquotes
Paragraphs and Line Breaks
"Blockquotes Blockquotes", Link。
Links
<link>
: https://github.comGFM a-tail link @pandao
Code Blocks (multi-language) & highlighting
Inline code
$ npm install marked
Code Blocks (Indented style)
Indented 4 spaces, like
<pre>
(Preformatted Text).<?php echo "Hello world!"; ?>
Code Blocks (Preformatted text):
| First Header | Second Header | | ------------- | ------------- | | Content Cell | Content Cell | | Content Cell | Content Cell |
Javascript
function test(){ console.log("Hello world!"); } (function(){ var box = function(){ return box.fn.init(); }; box.prototype = box.fn = { init : function(){ console.log('box.init()'); return this; }, add : function(str){ alert("add", str); return this; }, remove : function(str){ alert("remove", str); return this; } }; box.fn.init.prototype = box.fn; window.box =box; })(); var testBox = box(); testBox.add("jQuery").remove("jQuery");
HTML code
<!DOCTYPE html> <html> <head> <mate charest="utf-8" /> <title>Hello world!</title> </head> <body> <h1>Hello world!</h1> </body> </html>
Images
Image:
Follow your heart.
图为:厦门白城沙滩 Xiamen
图片加链接 (Image + Link):
图为:李健首张专辑《似水流年》封面
Lists
Unordered list (-)
- Item A
- Item B
- Item C
Unordered list (*)
- Item A
- Item B
- Item C
Unordered list (plus sign and nested)
- Item A
- Item B
- Item B 1
- Item B 2
- Item B 3
- Item C
- Item C 1
- Item C 2
- Item C 3
Ordered list
- Item A
- Item B
- Item C
Tables
First Header Second Header Content Cell Content Cell Content Cell Content Cell First Header Second Header Content Cell Content Cell Content Cell Content Cell Function name Description help()
Display the help window. destroy()
Destroy your computer! Item Value Computer $1600 Phone $12 Pipe $1 Left-Aligned Center Aligned Right Aligned col 3 is some wordy text $1600 col 2 is centered $12 zebra stripes are neat $1
HTML entities
© & ¨ ™ ¡ £ & < > ¥ € ® ± ¶ § ¦ ¯ « ·
X² Y³ ¾ ¼ × ÷ »
18ºC " '
Escaping for Special Characters
*literal asterisks*
Markdown extras
GFM task list
- [x] GFM task list 1
- [x] GFM task list 2
- [ ] GFM task list 3
- [ ] GFM task list 3-1
- [ ] GFM task list 3-2
- [ ] GFM task list 3-3
- [ ] GFM task list 4
- [ ] GFM task list 4-1
- [ ] GFM task list 4-2
Emoji mixed :smiley:
Blockquotes :star:
GFM task lists & Emoji & fontAwesome icon emoji & editormd logo emoji :editormd-logo-5x:
- [x] :smiley: @mentions, :smiley: #refs, links, formatting, and
tagssupported :editormd-logo:; - [x] list syntax required (any unordered or ordered list supported) :editormd-logo-3x:;
- [x] [ ] :smiley: this is a complete item :smiley:;
- [ ] []this is an incomplete item test link :fa-star: @pandao;
- [ ] [ ]this is an incomplete item :fa-star: :fa-gear:;
TeX(LaTeX)
\(E=mc^2\)
Inline \(E=mc^2\) Inline,Inline \(E=mc^2\) Inline。
\((\sqrt{3x-1}+(1+x)^2)\)
\(\sin(\alpha)^{\theta}=\sum_{i=0}^{n}(x^i + \cos(f))\)
FlowChart
st=>start: Login op=>operation: Login operation cond=>condition: Successful Yes or No? e=>end: To admin st->op->cond cond(yes)->e cond(no)->op
Sequence Diagram
Andrew->China: Says Hello Note right of China: China thinks\nabout it China-->Andrew: How are you? Andrew->>China: I am good thanks!
End
-
Some footnote text. ↩︎
-
In this part, you will find the conditions to finish this course and results.
-
In this part, you will information about the homeworks assigned during the labs
Detailed information and instructions related to the homeworks will be provided during the course.
Deadline to complete and present a homework is 3 weeks from the assignment date.
Homework 1:
Topic: Selenium front-end automated testing + screenplay pattern Assignment week: 5 Points: 5
Homework 2:
Topic: Cypress front-end automated testing Assignment week: 6 Points: 5
Homework 3:
Topic: JUnit (advanced features) Assignment week: 8 Points: 5
Homework 4:
Topic: Code static testing Assignment week: 11 Points: 5
-
Here is a list of PDF files with lecture slides. Lecture slides will be published on the day of the lecture.
-
- Rex Back, Jamie L. Mitchel: Advanced Software Testing Vol.3, Rocky Nook, 2011 Book
- Unmesh Gundecha: Selenium Testing Tools Cookbook, Packt Publishing 2012
- Lasse Koskela: Effective Unit Testing: A guide for Java developers, Manning, 2013 Book
- Collin, Mark. Mastering Selenium WebDriver. Packt Publishing Ltd, 2015. Book
- Meszaros, Gerard. xUnit test patterns: Refactoring test code. Addison Wesley, 2007. Book
- Bures, Renda, Dolezel: Efektivní testování softwaru. Grada 2016 Book
- Ammann, Paul, and Jeff Offutt. Introduction to software testing. Cambridge University Press, 2016.