YouTube2Text

Manual Software Testing Training Part-3 — Transcript

by SDET- QA · 13,661 words · 822 segments · language en · Watch on YouTube

Full transcript

  1. 0:00so before starting uh today's session let's recap  what we have seen till today till yesterday so in
  2. 0:07the previous session uh we have seen v model  especially v model right so in the v model
  3. 0:12we have discussed about what is verification and  validation and also we have discussed about static
  4. 0:17testing and dynamic testing so when i talk about  static and dynamic testing so the basically static
  5. 0:24testing means we can verify the documentation like  requirement documentation design documentation
  6. 0:31low level design high level design so to review  the documentation which is basically comes under
  7. 0:36static testing so our testing is mainly focusing  on the documentation part like project related
  8. 0:42documents and dynamic testing is mainly focusing  on the software so we are going to validate the
  9. 0:49software directly by providing different inputs  and observing outputs whether it is working
  10. 0:54according to customer requirement or not so that  is comes under the dynamic testing and similarly
  11. 1:00verification and validation so verification means  what whatever the process we are following we are
  12. 1:06cross checking each and every step so whether  we are following process correctly or not and
  13. 1:11verification techniques also we have discussed  like reviews walkthroughs and inspections
  14. 1:16and today we are going to discuss in detail  and validation means verifying the software
  15. 1:20testing the software according to customer  requirement which is comes under verification
  16. 1:25and unit testing integration testing system  testing and uit testing so these are the
  17. 1:31techniques we have to use during validation  okay these are validation techniques and under
  18. 1:36verification we have a reviews walkthroughs and  inspection so these are the concepts we have
  19. 1:40discussed in the in our previous session okay  now today we are going to focus on uh review
  20. 1:48walkthrough and inspection so even white box and  black box testing methods so what is white box and
  21. 1:53black box testing yesterday also we have discussed  white box means we have to test the internal logic
  22. 1:59of the program so normally what developers will  do is the developers write a programs to develop
  23. 2:04the software and to test the code directly which  is basically comes under white box testing white
  24. 2:11box means what what is there internally  we can see that that is white box testing
  25. 2:16and only developers can do that and black box  testing means what we can verify the functionality
  26. 2:22of the test functionality of the application  or functionality of the software whether it is
  27. 2:27working according to customer requirement or  not so basically in the black boss testing we
  28. 2:31don't need to know the programming because  we don't we don't need to know the internal
  29. 2:36logic of the program we have to just know the how  functionality is working right how the flows are
  30. 2:41working how the ui is there so all these things we  will focus during black boss testing so we don't
  31. 2:47need to know the internal logic of the program so  testers actually will do black box testing okay so
  32. 2:53these are the two things we have discussed in our  previous session and now come to today's session
  33. 3:01review walk through and inspection so yesterday  itself i have talked about static and dynamic
  34. 3:07testing so what are the static testing techniques  let me write here static testing techniques
  35. 3:15i told you three different techniques static  tech static testing techniques there are three
  36. 3:22techniques we have one is review is one of the  technique review and the second technique is
  37. 3:30walkthrough and the third technique is inspection  so these are the three techniques we use during
  38. 3:36static testing means verifying the documentation  and similarly we have a dynamic testing techniques
  39. 3:43dynamic testing techniques so what  are the dynamic testing techniques
  40. 3:48dynamic testing means we are actually testing the  software so unit testing integration testing and
  41. 3:56system testing integration testing and we have  a system testing and then we have uit testing
  42. 4:05user accept and testing so these are the dynamic  testing techniques so we will discuss this dynamic
  43. 4:10testing technique later so starting testing  techniques or reviews walkthrough and inspection
  44. 4:16so what exactly review walkthrough inspection  means so let us discuss in detail so what is
  45. 4:22review so what is review suppose when i provide  you some document i ask you to review the document
  46. 4:29what you will do normally so when i give some  document to you i ask you to review the document
  47. 4:35so normally what you will do is you will read  the entire document right so you will re-enter
  48. 4:40the document whether it is completely or not it  is completely written or not all the contents
  49. 4:46are mentioned in the document or not that is one  thing second thing is what whatever the content is
  50. 4:51specified in the document which is correct or not  so these two things are comes under review part
  51. 4:58so what is review means review is conducting on  the documents review conducts on the documents
  52. 5:04to ensure correctness and completeness so that  whatever the content we specified in the document
  53. 5:10should be correct and it should be complete  so that is basically comes under the review
  54. 5:15but what kind of reviews we do different type of  reviews we can do so different type of reviews
  55. 5:21will do so normally we will do requirements  review so there are multiple reviews we have
  56. 5:26let me just put it here so requirements review  what is requirement review means as soon as we
  57. 5:32got the requirement from the customer we will  review them so to understand those requirements
  58. 5:37better we will review them each and requirement  is mentioned or not it is correct or not so we can
  59. 5:42review that and design reviews and these design  reviews will be conducted on the design documents
  60. 5:48normally the designs will design the low level  documents high level documents like actually
  61. 5:54software will be designed in the form of diagrams  and pictures and those design documents we will
  62. 5:59review and code review so even sometimes code  also we can review so whatever the developer has
  63. 6:04written the code that also can be reviewed but not  by the testers even developers itself because unit
  64. 6:10testing can be done by the developers so whatever  code they have written in the programs they can
  65. 6:16also review the code whether all code is correctly  written syntactically is correct or not logically
  66. 6:22correct or not so they will verify that that is  called code review and sometimes one developer
  67. 6:28will return some code and another developer will  review the code how it is written and whether he
  68. 6:32followed proper coding standards or not so that  can be reviewed that is called as a code review
  69. 6:38and the second next thing is a test plan review so  even testing part even testing testers also will
  70. 6:44do some kind of reviews so whatever documents they  created and those documents also will be reviewed
  71. 6:50by the testers like test plan review test cases  review sometimes even defects also we can review
  72. 6:56like how many defects we have raised how many  are fixed how many are still open so we can also
  73. 7:00review the defects so these are all comes under  the review so normally we are mainly focusing
  74. 7:06on the documentation whether it is correct or to  ensure the correctness and completeness whether
  75. 7:13the document is correctly written and whatever  the content is mentioned which is complete or not
  76. 7:18so that is mainly called as a review okay and  review can be done anyone so in the team even
  77. 7:25developer or tester or manager so anybody can  do the review part so that is all about the
  78. 7:31simple review concept and the next technique  is a walkthrough sometimes we also do some
  79. 7:37walkthrough and this is also mainly focused on  the documents now we'll see what is walkthrough
  80. 7:45so what is walk so walk review can be  done anytime from by anybody by anyone
  81. 7:53okay there is no restriction nothing but when you  come to the walkthrough it is a basically informal
  82. 7:59review this is also kind of a review which is  informal means what we don't have a specific plan
  83. 8:05and we don't have a specific meeting invite  nothing and whenever you want to lose you can
  84. 8:10do walk through walk through it is a kind of a  review informal review we can say so let me just
  85. 8:16put few points here regarding the walkthrough  the first point it is informal review what is
  86. 8:22formal review what is informal review informal  review means there will not be any proper plan
  87. 8:29there will not be any schedule that is comes  under informal okay formal means what we have
  88. 8:36to some we have to be some plan before itself  and we have to send invite to the team and we
  89. 8:41have to invite all the team members at particular  point of time so that is purely formal but here
  90. 8:48walkthrough is an informal review means what we  can conduct walkthrough at any time at any place
  91. 8:55other reads the document or code and discuss  with the peer so who is other here means
  92. 9:01whoever created the document so whoever created  the document is called as a other so he will
  93. 9:08be involved mainly he is a main person in the  walkthrough so he will go through the document
  94. 9:14each and every statement or step he will read the  entire document or whatever code they have written
  95. 9:19they can read the code and discuss with the rest  of the people suppose i have created one document
  96. 9:26and i am the author of the document i just go  through each and every step and i'll explain to
  97. 9:31you what exactly which contains that is basically  called as a walkthrough the review is a different
  98. 9:37walkthrough is different review can be done by  many people and even one single person also can
  99. 9:42do review but walkthrough means at least two or  three people will be there two or more people
  100. 9:48will play at least one other should be there and  he read the document and requirement and others
  101. 9:54can also listen what he is saying exactly  what he is trying to understand the document
  102. 9:59that is called walkthrough and it's not  a pre-planned and can be done whenever
  103. 10:06is required that's the reason we say this  is an informal review which is not planned
  104. 10:10as and when we require we can walk through the  document with the team members normally other
  105. 10:16is created you can sit together with the team  and walk through the document so for example uh
  106. 10:22you have created some test plan you have created  some test cases you have written some test cases
  107. 10:27and you have to review first yourself okay review  comes first whatever document you created yourself
  108. 10:33first you review yourself whether you  mentioned everything you are not correct or not
  109. 10:38and the next step what you will do you will  review the document with your team members
  110. 10:43okay that is comes under walk through team members  in the sense not everybody with the peers just one
  111. 10:50or two persons sit together and you go through  the document and rest of the people will listen
  112. 10:56what you are exactly trying to understand them  so that is basically walk through so it is not
  113. 11:01pre-planned and also walkthrough doesn't have any  minutes of meeting so normally when you conduct
  114. 11:07any meetings in the company we will note down  all the points okay we will note down what we
  115. 11:13have discussed in the meeting and we'll produce  those points to the team will share all the
  116. 11:17meeting options to the team and here we don't have  such type of things because this is a informal if
  117. 11:22it is a completely formal meeting then everything  will be there but it is informal okay and what is
  118. 11:29the basic difference between review and want to  in the review only other will be there okay weber
  119. 11:36is required to understand the document he will  read the document and checks the correctness and
  120. 11:41completeness only single person also can do review  but when you come to the walkthrough at least two
  121. 11:47or more people will be involved it appears  very number very minimal number of people
  122. 11:51only the team members only peers peers is  nothing but the person who are working with you
  123. 11:56along with you in your team so you go through the  document and read the document rest of the people
  124. 12:02can understand the document understand  the content in the document so it is not
  125. 12:06pre-planned and also doesn't have any meanings of  me because it is an informal review okay that is a
  126. 12:13walkthrough and the next one is the inspection and  this is another important thing inspection this is
  127. 12:22another technique we do in the static testing  inspection so what is inspection means what
  128. 12:27inspection is more formal okay more formal means  we have to pre-planned so we have to pre-planned
  129. 12:36and we have to send invite to the team members  not only testing so sometimes even developers
  130. 12:41managers also it's more mostly it is informal  review we have to send an email to the team we
  131. 12:47have to invite them on particular time and what  you will do inspection in inspection actually
  132. 12:53there are three kinds of people will be involved  okay so in inspection there are three people are
  133. 13:00involved so one type of people called as a reader  writer and moderator so the three kinds of people
  134. 13:11will be involved in the inspection  reader writer moderator just a moment
  135. 13:24all right so in inspection especially three kinds  of people will be involved reader writer and
  136. 13:29moderator so let us understand these three role  very important so who is reader who is writer who
  137. 13:34is moderator so the reader means normally he is  the author of the document so whoever is created
  138. 13:41the document which is called as a reader and he  will read the document and writer so writer is
  139. 13:48nothing but suppose while reading the document  by the other rest of the team will raise some
  140. 13:53questions or clarifications right and the writer  will note down all the questions and clarification
  141. 14:00what they have discussed in that particular  inspection meeting so that role is taken by one
  142. 14:06guy is called a writer you will note down all the  clarifications and issues everything and the third
  143. 14:12one is a moderator is just like a anger moderator  means he is like a mediator between the other
  144. 14:19and rest of the team okay so reader writer and  moderator moderator means he's actually organizer
  145. 14:26meeting he's a basic organizer okay and reader  writer and moderator so these are three people
  146. 14:34will sit together and then do the inspection so it  is a more formal review and reader will read the
  147. 14:41document and writer will write the write down all  the issues and clarifications rised by the team
  148. 14:48and the moderator he moderate the meeting he  organized a meeting okay and here many number of
  149. 14:55people will be involved other than right reader  writer moderator rest of the people also will
  150. 15:00be involved whoever is working on the team like  development and qa project managers everybody will
  151. 15:05be involved in this because this is more formal  everybody should be there and inspection will
  152. 15:11have a proper schedule which will be intimated  via email to the consent developers or testers
  153. 15:19because this is more formal meeting and before  that we have to plan and we have to send an
  154. 15:25email to the team and we have to invite them on  particular time and also we have to note down
  155. 15:31the mean minutes of meeting and we do that even  writer or sometimes in moderator so these people
  156. 15:39will write down the minutes of meeting and share  with the team so this is called as inspection
  157. 15:45so the static testing is nothing but testing  the documentation whether which is correctly
  158. 15:51written or not and static testing can be done by  using either review or walkthrough or inspection
  159. 16:01and inspection is more formal whereas review and  walkthrough or informal because you can conduct
  160. 16:08them at any time at anywhere but inspection  is more formal it is just like a meeting
  161. 16:15okay so these are the static testing techniques  guys so review walkthrough and inspection now
  162. 16:22come to the dynamic testing techniques there are  four kinds of techniques we have like unit testing
  163. 16:28integration testing system testing uit testing  because here by the time we start dynamic testing
  164. 16:35software will be ready coding part will be done  so we have to test the software directly so during
  165. 16:41unit testing the developers will concentrate on  testing the code what they have written and during
  166. 16:47integration testing they will integrate multiple  modules and multiple components in the software
  167. 16:53and they will check the data flow between  the components whether those components
  168. 16:58properly communicate or not that is integration  testing and in system testing actual testers will
  169. 17:04perform system testing whether our software is  working according to customer requirement or not
  170. 17:10it is meeting all the requirements or not  the functions is working perf perfectly or
  171. 17:14not performance is good or not security testing  ui testing the lot of testings will be conducted
  172. 17:21during system testing normally the testers will  be doing this testing and finally uat testing
  173. 17:27user acceptance testing normally the uat will  be done by the testers along with the customers
  174. 17:33and they will set up the exact environment where  the customer is going to work and they install
  175. 17:39the software and from the customer point of view  they will test the some flows like what they do
  176. 17:46day to day basis on the software what are the  transactions that they do they will test them and
  177. 17:51they also execute some of the test cases on the  software that comes under the uat testing okay so
  178. 17:56we will discuss these in detail later so basically  these are the techniques which we have to use in
  179. 18:03dynamic testing so static testing will mainly  focus on the documentation project documentation
  180. 18:10dynamic testing mainly focusing on the software  which we have developed actual software we are
  181. 18:15going to verify or validate okay right so the  next thing is we have seen review walkthrough and
  182. 18:24inspection now in the software industry especially  software testing we hear these steps qa qc and
  183. 18:35qa so now we need to understand them what exactly  qa means what is exactly qc means and qa means
  184. 18:41okay very very important so first let  us compare qa and qc okay and then
  185. 18:49i'll tell you what exactly qa means so this term  is recently started qa means quality assurance qc
  186. 18:56means quality control qe means quality engineering  okay a small difference i'll tell you first let us
  187. 19:02compare qa and qc then we'll come back to the qe  okay these terms are very important especially in
  188. 19:10the software industry so let us start what is qa  and qc let me put some points here qa versus qc
  189. 19:25okay so qa versus qc so the first point is qa  is a process related qc is actual testing of
  190. 19:37the software let's try to understand this qa  is process related qc is actual testing of the
  191. 19:44software qa is a process related so what is  process related means if there is a company
  192. 19:52there will be three important things there will  be three pillars one is people second one is
  193. 19:59process the third one is product so these are the  three p's p means uh first people should be there
  194. 20:07if there is a company people should be there and  we have to follow certain process and finally what
  195. 20:15you will get you will get the product product  in a sense a software or an application so
  196. 20:20these three piece are the pillars of the company  any company it is a not only i.t company it is
  197. 20:24can be any type of company these are the three  p's we can call them as a pillars of a company
  198. 20:30the first p representing the people people should  be there and the process should follow and finally
  199. 20:37the people follow the process to produce the  equality product that's the end goal right
  200. 20:44so here qa means it is a process related this is a  process qa is related to the process means the qa
  201. 20:54the people who are belongs to the qa will always  define the process and talk about the process
  202. 21:02and also they ensure rest of the people are  profiling proper uh for process properly so that
  203. 21:09is the responsibility of the qa so qa is a process  related okay and they will define the process okay
  204. 21:17they will define the process means what high level  management people will comes under the queueing
  205. 21:22which is talking about entire process development  cycle from the beginning from the requirement to
  206. 21:27till we release the product to the customer so  the entire process is designed by these people
  207. 21:35and also these people are make sure rest of the  people are following the process properly or not
  208. 21:42okay like high level management people comes under  the keyway if i say normally qa is process related
  209. 21:49this is the first point and qc is actual testing  of the software so yesterday we have seen a few
  210. 21:56step size after development process what is that  requirement requirement analysis okay this is a uh
  211. 22:06first step and the second step is a design part  and then we have seen coding part and then testing
  212. 22:13right and then deployment and then  maintenance so these are the different
  213. 22:17phases we have seen in sdlc process this is  stlc process software development lifecycle
  214. 22:23so here qa involved in every stage of software  development because they are taking care of
  215. 22:30the process so what process we have to follow  how people are following the process will be
  216. 22:37observed by the qa because high level management  people comes under qa and this is involved
  217. 22:43throughout the development process remember this  is involved throughout the development process
  218. 22:49but the qa is actually testing the software and  the qa qcq is actually testing the software and
  219. 22:57they are involved only during testing part okay  so people who are working under testing they are
  220. 23:03actually comes under qc that actually comes under  q's equality control the those people actually
  221. 23:10test the software whether it is working according  to customer requirement or not okay that is a
  222. 23:15first point guys so qc is actually talking about  the people especially testers especially testers
  223. 23:25okay and the qa is a process related they will  define the process and make sure others also
  224. 23:31following the process correctly or not that is  qa qct means what they are actual testers they
  225. 23:37are verifying and validating the software whether  it is working according to customer requirement or
  226. 23:42not that is the first point next one the second  point is qa qa focuses on building in quality
  227. 23:54qc focuses on testing for quality so observe  this carefully i said qa is a process related
  228. 24:02why we need to have process why we need to have  process finally we have to deliver the quality
  229. 24:08product so to deliver the quality product to the  customer we have to follow certain process and why
  230. 24:14process we are following means the ultimate goal  is to produce the quality product to the customer
  231. 24:19right and here we are also thinking about the  quality of the software for that the process is
  232. 24:25designed so qa focuses on building in quality we  are trying to build the quality product okay and
  233. 24:34this is related to that so process is designed  for building the quality called the product
  234. 24:40and qc is for testers i said so qc focuses on  testing for quality what qc people will do testing
  235. 24:48why we are going to why we are doing testing  because to deliver the quality product to the
  236. 24:53customer and both are talking about the quality  but a small difference between these two are it
  237. 24:59is for building the quality it is for testing for  quality okay building for quality in the sense
  238. 25:07to follow certain process properly finally we  are able to deliver the quality product to the
  239. 25:12customer for that process is designed and what  is why we are going to conduct testing because
  240. 25:18if the software is having bugs or not we have  to find some bugs because we also trying to
  241. 25:23produce a quality product to the customer  so testing for quality so qa focuses on
  242. 25:29building inequality qc focuses on testing for  quality and again qcqa is related to people
  243. 25:36and process and qc is related to the testing  testing people all right the next point is
  244. 25:45qcqa is for preventing the defects qc  is detecting the defects understand the
  245. 25:53difference qa is for preventing the defects qc is  for detecting the defects so what is prevention
  246. 26:01so qa is talking about the process if  you if you follow the process correctly
  247. 26:08or perfectly we can prevent the defects in  the future right if i follow process correctly
  248. 26:15we can prevent the defects in the future  so that is a prevention activity whereas qc
  249. 26:22is detecting the defects because which is related  to the testing what you will do in the testing we
  250. 26:27will find the defects and why qc is there  why testers are there to detect the defects
  251. 26:32as many as bugs we have in our application  we have to find out that is called detection
  252. 26:37prevention means what we have to make sure in  future should not any bugs or defects should
  253. 26:42not come in future that is a prevention detection  means what the box will be there we are trying to
  254. 26:48find out that is a detection so q a is for qa is  for preventing the defects and that's the reason
  255. 26:55they define the process and also they make sure  people are following prop process correctly or not
  256. 27:01but qc is for detecting the defects while  testing the software we are going to detect
  257. 27:07the defects find the defects and report to the  developer because that is a testing activity okay
  258. 27:14there is a one difference and next one is as  i said before huge a is a process oriented it
  259. 27:20will always focus on the process always talk  about process process process and that's the
  260. 27:27reason which is involved in everywhere that  means throughout the development process
  261. 27:33qa is involved it is talk about the requirement  talk about the design coding testing diploma
  262. 27:38everywhere qa will take care about so because  the management managers product managers project
  263. 27:45managers they are comes to the queue actually  so they are taking care of everything so they
  264. 27:50are involved throughout the development process  but qc is a product oriented what is product
  265. 27:57oriented means testing during testing we are  mainly focusing on the quality of the product
  266. 28:03our main goal is to produce a quality software to  the customer or quality product to the customer
  267. 28:09so our our main goal our main intention should  be on product not about the process we follow
  268. 28:15certain process but if that that is not our job  to define the process and everything that is a
  269. 28:21qa but qc means what we are product oriented our  concentration is always on the product quality
  270. 28:29finding bugs so this is the actual area we are  going to focus which is product so qa is a process
  271. 28:36oriented you see is a product oriented okay and  uh the last point is as i said qa is for entire
  272. 28:49software development lifecycle whereas qc is for  testing part in sdlc so when i say sdlc these are
  273. 28:56the different phases requirement analysis design  coding testing deployment and maintenance so qc
  274. 29:05qa for entire live cycles so as i said  before qa is involved in every phase
  275. 29:10whereas qc is involved in the testing phase people  are working on the testing department we can call
  276. 29:15them as a qc actually we have to say qc them but  people are normally calling qa people but actual
  277. 29:22term is a qc they are comes under the qc because  they are the people actually testing the software
  278. 29:27and concentrating on the product and the qa means  a process people who are defined the process comes
  279. 29:34under the keyway and that's the reason this is  there for entire life cycle whereas the qa is
  280. 29:40there only in the testing part which is a one part  of entire q a we can say q c is a subset of q a
  281. 29:47is nothing but an entire process q c is nothing  but which is a one part in the q a which is
  282. 29:52testing okay so these are the two differences  between these are the few differences between
  283. 29:58qa and qc remember guys so qa is a process related  whereas the qa is actual testing of the software
  284. 30:07qa focuses on building in quality they  are always trying to build the quality
  285. 30:12product and the qc is always focusing on the  testing the quality testing for the quality
  286. 30:18and qa is preventing activity qc is a detecting  activity and qes is a process oriented qc is a
  287. 30:25product oriented qa is for entire life cycle qc  is for testing part of sdlc okay so these are the
  288. 30:34few differences which we need to understand  between qa and qc very very important question
  289. 30:40in interview okay so i hope you guys are clear  can you please confirm the chart window everyone
  290. 30:47so now i will discuss about  the qe quality engineering
  291. 30:54so the next one is a quality engineering so  recently these terms got started guys q e along
  292. 31:02with the qa called assurance and quality control  there is one more term called as a qe what is qe
  293. 31:10qe means quality engineering engineering  so this is a little advanced term guys
  294. 31:20okay this is advanced term then qc  okay after qc qe will come so normally
  295. 31:28uh people like people are belongs to qc like  testers they do normally manual testing right
  296. 31:34and they also do some automation testing testers  in the nothing but we can have manual testers and
  297. 31:38automation tester or belongs to qc but what is qa  means uber is doing automation testing normally
  298. 31:46they will write a code okay they will write the  code for testing the software actually those
  299. 31:52people are comes under quality engineering okay  simple guys so we have software engineer we have a
  300. 31:59software engineer term right software engineer we  can say yes e similarly quality engineer quality
  301. 32:10engineer quality engineer i say qe what is basic  difference why you are calling engineer here
  302. 32:17the reason is the reason is when i say developer  software engineer what they have to do what they
  303. 32:24have to do now what they do normally they will  write the code to develop the software so they
  304. 32:30will write the code by using programming language  they will write the code to develop the software
  305. 32:35the main focus on development but what quality  engineer will do they also write the code for
  306. 32:42testing the software so quality engineer means  automation tester they also write the code
  307. 32:48for testing purpose to test the software so  both are writing the code right so we can call
  308. 32:54them as a quality engineering so who is writing  the code for development we can call them as a
  309. 33:00software engineer ses and whoever is writing the  code for testing the software comes under quality
  310. 33:07engineer we can call them as a quality engineer so  qe is a team which contains the automation testers
  311. 33:14who are involved in the writing the code also  okay that is the new 10 people are nowadays
  312. 33:19using in the companies and whenever you see  some kiwi requirement don't confuse by seeing
  313. 33:23that sometimes you can see qa or qc or qe so  all these terms are related to testing only
  314. 33:30and especially when i ask a qe and this  particular role is related to automation testers
  315. 33:36okay that's the only difference between qa and  qa qc and qe okay mainly we have to understand
  316. 33:42the difference between qa and qc but the qe also  mostly related to qc itself the only difference is
  317. 33:50in the qe people are also writing the code to test  the software and there also comes under qc okay
  318. 33:57so understand these differences uh very important  okay that's it so qa qc and qe now let us move on
  319. 34:08to the next topic levels of software testing  levels what are the different levels we will
  320. 34:14conduct software testing so yesterday when  i talked about v-modal what is the first
  321. 34:20level of testing we do what is the first  level of testing we do unit testing after
  322. 34:25completion of the software okay let  me write here so levels of testing
  323. 34:36let me write so levels of
  324. 34:42testing so what is level means step by step after  one testing the next level testing or next level
  325. 34:47testing so these are the four levels of testing  and these are the techniques which we have to use
  326. 34:56for dynamic testing right unit testing integration  testing system testing uit testing we can call
  327. 35:02them as a user acceptance testing user acceptance  testing so let us try to understand this
  328. 35:10these are the different levels one after another  first we conduct unit testing then we go to
  329. 35:16integration testing then we go to system testing  then we go to user acceptance testing these are
  330. 35:22the different levels okay let us try to understand  clearly very very important just understand this
  331. 35:30so uni testing so what you will do in the unit  testing we are just going to test the uh some
  332. 35:37component a small module in the application so  that is normally done by the developers at the
  333. 35:42code level whatever the code some program a small  program they have written for some requirement
  334. 35:48they will test that program a small piece of code  will be tested that is comes under unit testing
  335. 35:54what is unit means unit means a small component  is called as a unit which is unit testing
  336. 36:00integration testing means what while coming  while combining multiple units or multiple
  337. 36:05modules as a single unit then we will check the  data flow or communication between those modules
  338. 36:12which is called integration testing and system  testing means what we are testing the overall
  339. 36:17functionality of the application whether it is  working according to customer requirement or not
  340. 36:22each and every requirement is mentioned in the  software are working or not we are going to test
  341. 36:27that is system testing uit testing means what at  the last level after completion of system testing
  342. 36:34testers along with the users will conduct user  acceptance testing okay these are the different
  343. 36:40levels we cannot directly jump into system testing  we cannot directly jump into integration testing
  344. 36:45so once you completed unit testing then  we go for inter integration then we go
  345. 36:49for system then we go for uh uit testing so  these are the different levels of testing
  346. 36:55now i will discuss in detail one by one  so we need to understand them very very
  347. 37:00clearly so the first testing is unit testing this  is the first level as soon as a coding is started
  348. 37:08the developers will conduct the unit testing in  their environment okay we are not bothered about
  349. 37:14the unit testing and also developer will care  because this is comes under white box testing
  350. 37:18technique integration and unit testing comes  under white box testing techniques remember that
  351. 37:25so let me just uh write a few important points  related to unit testing okay so let us understand
  352. 37:33what is a unit a unit is a single component or  a module of a software so when i take a software
  353. 37:42which is a big software and which contains n  number of features lot of functionalities lot of
  354. 37:49and each and every feature which we can call  it as a component for example if i take a
  355. 37:55big application a gmail application in the  gmail application suppose when i take a login
  356. 38:02that's the first entry right  a login that is one component
  357. 38:05so after successful login composing email that is  one component we can say one is that is one module
  358. 38:12and after composing the email the mail comes  to the send box and send box is one module
  359. 38:18and after deleting the email that comes under  the deleted emails and deleting emails is one
  360. 38:23module so the entire software or application  will be divided into multiple units which we
  361. 38:29can call them as a components or modules so if i  conduct testing on that particular unit or module
  362. 38:38or component which is comes under unit testing  okay and normally developers write a simple
  363. 38:45programs for them and conducting the testing at  the code level that comes under the unit testing
  364. 38:52but sometimes we get the ui also in the tester  point of view we will test the ui suppose i
  365. 38:57have a simple login screen and for login the  developer writes some code internally so developer
  366. 39:04will conduct the testing on that particular code  in that context we can call as a unit testing
  367. 39:10and after providing the ui ui means  what screen after providing the ui
  368. 39:16to the tester we don't bother about the  code we are going to test the application
  369. 39:21we are passing the valid username valid password  and we are checking such a login is successful or
  370. 39:26not like invalid username invalid password login  is restricting or not we are going to test that
  371. 39:31in that context we can call it as a component  testing we don't use a unit testing term in
  372. 39:38case of testing or testers we use a component  testing because we are testing the ui part there
  373. 39:44but in the developer point of view whatever  program they have written inside the ui if
  374. 39:49you conduct the testing on that particular code or  program that comes under the unit testing almost
  375. 39:55same okay but the way of testing is different so  unit is a single component or module of a software
  376. 40:04unit testing is conduct on the single program  or single module because the entire software is
  377. 40:09divided into multiple pieces or multiple modules  or multiple programs and unit testing is a white
  378. 40:17box testing technique why we are calling it is  a white box testing technique because we have
  379. 40:22to know the internal logic of the program so what  developer is written so that's the reason whoever
  380. 40:28is writing the code they are the responsible  for conducting the testing so unit testing is
  381. 40:33a white box testing technique unit testing  is conducted by conducted by the developers
  382. 40:39because they are the people written the code  and they use certain techniques okay to conduct
  383. 40:45the unit testing they use certain techniques  what are the techniques basis path testing
  384. 40:50control structure testing under this control  conditional coverage loops coverage comes under
  385. 40:57control structure testing and mutation testing  these are the different techniques they use
  386. 41:02during unit testing okay like basis path testing  means what for example let us try to understand
  387. 41:08very high level not much important because these  are the techniques we used by the developers
  388. 41:14at the code level so let's try to understand  with very high level what is basis path testing
  389. 41:19means suppose we have created some program  developer has written some program like this
  390. 41:25and which is having multiple lines okay  and when i test this program each and every
  391. 41:32line should be covered while executing the program  while providing the input to the program each and
  392. 41:38every line of the program should be executed at  least once at least once so that comes under the
  393. 41:45basis path testing every path in your program  should be executed at least once that comes on
  394. 41:51the basis path testing similarly control structure  testing under this we have a conditional coverage
  395. 41:58loops coverage and in normally the programming  we have if condition if else condition switch
  396. 42:03case condition so we will verify those conditions  are working properly in all the cases like we pass
  397. 42:09negative condition we pass positive condition so  simple for example i want to find out like largest
  398. 42:17of two numbers okay largest of two numbers let  us say the developer is written code like this
  399. 42:22i say a is equal to 10 b is equal to 20 and  i'll write one condition if a greater than b
  400. 42:29then what so i have to print a is largest  is the largest and suppose else else
  401. 42:38uh else b is larger so let us say developer has  written the code like this simple code i have
  402. 42:44written here and in the conditional  coverage what developer will test is
  403. 42:51verify the conditions suppose if a is  greater than b so a is 10 b is 20 so 10
  404. 42:58is greater than 20 which is correct or not which  is not correct so condition is false so b is the
  405. 43:04largest so the output of this program is b is  largest because this condition is false suppose
  406. 43:09i'll make a values at on twenty and b value is a  ten now what happen this condition becomes true
  407. 43:15because a value is a twenty twenty greater than  ten so the condition is true so then it prints
  408. 43:21a is the largest so if the condition is true it  print a is largest if the condition is false b is
  409. 43:26largest only one output you will get either a is  largest or b is largest depends on the condition
  410. 43:33so in the conditional coverage what developer will  do is the developer will verify the condition in
  411. 43:39positive input and negative input so previously  the condition become false now the condition
  412. 43:45becomes true in both the cases we will verify that  so that comes under the conditional coverage so
  413. 43:52developer normally writes a huge number of  programs and n number of conditions will be
  414. 43:57you will be there in the program in all the  conditions will be verified by providing the
  415. 44:02different sets of data okay so that is comes under  conditional coverage and the next one we have is
  416. 44:08loops coverage so sometimes in the programming  if you want to repeat some statements we have
  417. 44:14to keep in the looping like loop block and  that statement will be repeated multiple times
  418. 44:21okay so for example let me write a simple example  do not worry if you are not understood this code
  419. 44:25okay it is a very basic code i have written to  just demonstrate what is conditional coverage
  420. 44:31now i will tell you loops coverage what is loops  coverage let us say developer has written some
  421. 44:37codes or suppose my program is let us say  i want to print one two five five numbers
  422. 44:44i want to print one to five numbers through  program and developer has written some code
  423. 44:49like this so how developer is written developer  is taken a small number let us say initial number
  424. 44:54is 1 starting from 1 and what is the maximum  number maximum number is maximum number is 5 and
  425. 45:01between 1 to 5 i want to print all the numbers  so normally we can write there is a print one
  426. 45:08okay and you can say print 2.3 we can just write  multiple statements like this that's a print two
  427. 45:15so let's say multiple statement i can add  one two three and four and five so when i say
  428. 45:23if i want to print one to find numbers  i can write number of print statements
  429. 45:27but instead of writing this suppose i want to  print hundred then we have to write hundred pin
  430. 45:33statements so to avoid that the what developer  will do is they will write only one statement
  431. 45:40and repeat five times same statement will  repeat five times instead of writing multiple
  432. 45:45times so then what you will do is they will put  this statement in the loop means it's a block
  433. 45:51which will repeat multiple time based on certain  condition okay just observe this don't worry if
  434. 45:57you are not understood no issues at all so here  i'm writing the one loop statement so here i'm
  435. 46:02writing something else while i less than or equal  to max okay and then inside the block i'll put
  436. 46:10this print statement every time i'm printing the  i value not one see this and after printing the
  437. 46:17i value i'm incrementing the i value i equal  to i plus one just observe this logic don't
  438. 46:23worry if you are not understood no issues just  understand very high level my requirement here
  439. 46:28is i just want to print one two five numbers so  initial number is one the maximum number is five
  440. 46:35okay so here what exactly i am doing is i put some  condition based on the condition if the condition
  441. 46:41is true these two statements will execute if  the condition is false these two statements
  442. 46:47will not be executed it will ignore it so if i  say 1 maximum is 5 so 1 less than or equal to
  443. 46:55condition is true then what happens here it  will print i means 1 it will print the output
  444. 47:02then what happens as soon as i printed i value 1  i value is incremented by 1 so i equal to i plus
  445. 47:091 means what i value is already 1 1 plus 1 2 now  2 is assigned to the i now currently i value is
  446. 47:15a 2 now again it will go up and again check the  condition now 2 is the current value of i is 2
  447. 47:212 less than or equal to 5 again condition is  true now it will come here then it will print 2.
  448. 47:28similarly every time it will print i value as soon  as it printed i value again it will increment and
  449. 47:33again check the condition so like this the same  block of statements will execute multiple times so
  450. 47:40as soon as i value becomes 6 then condition become  false then it will stop printing the numbers
  451. 47:46so this is basically called as a loop in  programming we can call it as a loop loop
  452. 47:51is nothing but a block of statements which we can  repeat multiple times based on certain condition
  453. 47:57okay and as soon as this condition is false  the statements are stopped executing okay
  454. 48:04now in the loops coverage what you will test  is when i execute this program whether it is
  455. 48:11starting from the beginning or not and it is  repeating exactly till the maximum number or not
  456. 48:19and whether it's printing all the numbers  between this range or not okay we are going
  457. 48:23to verify and suppose when i say 6 here so  6 numbers should print when i say 10 here it
  458. 48:29should print 10 numbers okay so like this we will  verify the loops that comes on the loops coverage
  459. 48:37okay this is purely related to programming okay  so that's the reason which is comes under unit
  460. 48:42testing which is a white box testing technique so  to conduct this type of testing we have to know
  461. 48:47the programming and the last one is a mutation  testing so mutation is nothing but a repetition
  462. 48:53suppose uh some programs if you want to test  we have to provide different type of inputs
  463. 48:58okay suppose a developer is written some program  like this like checking the user and password
  464. 49:04let's say if user equal to let's say scott and  password password is equal to let's say one two
  465. 49:15three then i say hello login okay and else if  the user is not scored and not password123 then
  466. 49:25not hello login so let us say simple code is  written by the developer like this now in the
  467. 49:31mutation testing what you will do is we will test  this code by passing different type of inputs
  468. 49:37for example when i provide the username is  called and password is one two three then
  469. 49:42this condition will be true login will  be a lot and else part will be ignored
  470. 49:47and suppose when i pass valid user it's got  an invalid password instead of one two three
  471. 49:53and they pass something else like 235  then else part will execute not allow
  472. 49:58the login that is one combination and another  combination very username and valid password
  473. 50:04valid username and valid uh invalid password  like invalid username and valid password
  474. 50:10okay so we can just say different combinations  and by providing different type of inputs we are
  475. 50:15going to test this program whether it is working  properly or not that is comes under the mutation
  476. 50:21testing mutation is nothing but a repetition  testing the code with multiple sets of data
  477. 50:27okay so these are all unique testing techniques we  can say unit testing techniques and the developers
  478. 50:34will use these techniques to conduct unit  testing they also use some automation tools
  479. 50:39unit tests also can be done through automation  they use unit unit or junit testing e so these
  480. 50:45are all unique testing tools are available okay  developers will take care of this we don't need
  481. 50:50to worry about this we don't need to worry about  this okay just understand what is unit testing and
  482. 50:55we will conduct unit testing and what testing can  be done in the unit testing so that is enough okay
  483. 51:02so we are mainly involved in the system testing  we have to discuss more on the system testing
  484. 51:07phase so here this is the area actually we are  going to involve more that is our area and rest
  485. 51:12of the things we don't need to bother about just  we need to understand the definition and process
  486. 51:17okay so that is unit testing guys now let us move  on to the next level of testing so please focus
  487. 51:24guys what i'm saying very very important topics  i'm discussing so the next level of testing is
  488. 51:32integration testing and do we miss any points  here unit testing is a white box testing unit
  489. 51:40testing is connected by the developers and  these are the different techniques fine so now
  490. 51:45let us move on to the next level of testing which  is integration testing is integration testing okay
  491. 51:56so which very very important integration  testing right so very important the next one
  492. 52:02is integration testing so what is integration  test you will get lot of inter equations also
  493. 52:07so please listen carefully so  what is integration testing
  494. 52:13okay
  495. 52:19so let me write few points here so integration  testing performed between two or more modules
  496. 52:29so what is module we have already discussed  what is module model is nothing but a small
  497. 52:33functionality or small feature from the software  which is called as a model so if i take a gmail
  498. 52:39application login is one module composing email  is one module and deleting emails is one module
  499. 52:47outbox is one module sent emails is one module so  different models will be there in your application
  500. 52:52similarly if i take a banking application  a login is a one model and sending money or
  501. 52:58transfer money is one module check balance  is one module generating the report is one
  502. 53:03module so every software every application is  having different modules okay so integration
  503. 53:09testing will be conduct or perform between two or  more modules if you want to perform integration
  504. 53:15testing at least two models will be integrated so  after completion of unit testing we do integration
  505. 53:22testing so during integration testing we'll  conduct the testing between two or more models
  506. 53:29and integration testing focuses on checking  the data communication between multiple modules
  507. 53:36there is one module which will take some  input and which will produce some output
  508. 53:41and that output is become the input for the  next model so it will be like this guys in
  509. 53:48integration testing let us say i have one module  here let us say a and this module if you want to
  510. 53:54test we have to pass some input to this and after  passing some input to this model it will give you
  511. 54:00some outcome or output that becomes the input  for the next model and this is also giving some
  512. 54:06output so we are going to test the communication  between these two models after combining these two
  513. 54:15that is called integration testing integration  testing means we are checking the data flow
  514. 54:21between the two or multiple models which is comes  under integration testing and the next point
  515. 54:32integration testing is a white box testing  techniques so normally integration testing
  516. 54:38can be conducted in two different things guys  in the developer point of view if i talk they
  517. 54:43will test the code so they will write the code  for some write some program for module a they
  518. 54:49will write another program for module b and they  will integrate these two programs and you will
  519. 54:54test the code how the integration is happening  this is comes under integration in that context
  520. 55:01we can say developers will perform the integration  testing at the code level at the code level okay
  521. 55:08suppose sometimes the testers also will perform  integration testing but how come it is possible
  522. 55:15because here let us say i'll give you a  simple example then you can understand
  523. 55:21let us say something called
  524. 55:24so we have something called a gmail application  let us take an example then understand a gmail
  525. 55:30application okay so in the gmail application  what are the different modules we have
  526. 55:36we have something called login okay so login  is a one module and after successful login
  527. 55:45where we can see all our emails in the mailbox  so there is something called mailbox this is
  528. 55:52another module suppose okay so suppose  i deleted some emails from my mailbox
  529. 55:59where it goes it goes to deleted email section  so there is another module called deleted emails
  530. 56:06so deleted email so these are three  different modules in my application
  531. 56:12okay so in integration testing developer point  of view if i talk developer point of view
  532. 56:19they will write some code for login they will  write some code for mailbox functionality
  533. 56:26they will write some code for deleting emails  this is just a coding part okay and then
  534. 56:34integrate these three models and what developer  will do first they execute the first model
  535. 56:40and after successful execution it went to mailbox  and after deleting the after after building action
  536. 56:47the mail comes to the deleted email section so the  integration between the programs will be tested
  537. 56:55that is integration testing done by the developers
  538. 56:59okay that is integration testing done by the  developer this is a purely white box testing
  539. 57:05now come to the testers for the same login instead  of providing the code they will provide us a ui
  540. 57:13part we will have a ui like here username field  will be there password field then we have to enter
  541. 57:20the data then we will get another page gmail  page here we will see mailbox here we will see
  542. 57:26send items right so on the ui side we also  conduct the integration testing how we can do
  543. 57:33first we will verify the login by passing valid  username and valid password then successfully
  544. 57:38log into application then we will check the  email box there we will have any emails or
  545. 57:44not we will verify after deleting the email that  email comes to the send box or not we will verify
  546. 57:50so because these are different module but the  communication will be there between these two
  547. 57:55models how data is communicating between these  models we are going to test at the application
  548. 58:00level this is also comes under integration testing  and in the testing point of view or tester point
  549. 58:07of view we also conduct integration testing at  the application level and developer point of view
  550. 58:13developer also conduct integration tester at the  coding level that is the basic difference okay
  551. 58:20understood guys what i am explaining here so  the same kind of testing the developers will
  552. 58:25conduct at the code level whatever the code  they have written that is one integration
  553. 58:30testing at the tester point of view we do not  have this code okay we don't test this code
  554. 58:36they will create a ui for that and that ui user  interface will be provided to the tester and then
  555. 58:43in the testing point of view we are verifying  the application functionality so login is module
  556. 58:49like mailbox or inbox is one module  deleted emails is one module so
  557. 58:54we are verifying these functionality in different  modules are working fine or not after integration
  558. 59:01so this is a integration testing done by the  testers at the ui level and if i test the programs
  559. 59:09that comes under the integration testing done  by the testers oh sorry developers okay so guys
  560. 59:16understood this very very important so integration  testing means testing the data flow between
  561. 59:22multiple modules testing the data flow between  multiple modules which is called as integration
  562. 59:27testing if i do integration testing at the code  level by the developers and sometimes we can do
  563. 59:34integration testing at the ui level by the testers  okay so that is the concept of integration testing
  564. 59:43now in integration testing there are two  types of integration testings we have
  565. 59:51okay understand side types of integration testing  there are two types of integration testing we have
  566. 1:00:00so one is incremental integration non-incremental  integration listen these concepts guys very
  567. 1:00:06very clear incremental integration testing  non-incremental integration testing this is also
  568. 1:00:16incremental integration testing non-incremental  integration testing so first let us try to
  569. 1:00:22understand first one incremental integration  testing because this is most important
  570. 1:00:28most of the times we don't use non-incremental  most of the times we use incremental integration
  571. 1:00:34testing so let us try to understand what  is incremental increase integration testing
  572. 1:00:40so this is also integration testing so  what is incremental integration testing
  573. 1:00:48incremental integration testing means
  574. 1:00:53incrementally adding the modules and  testing the data flow between the models
  575. 1:01:00incrementally adding the modules and testing the  data flow between the models what does it mean
  576. 1:01:06incrementally adding the modules and  testing the data flow between the models
  577. 1:01:11simple incremental integration so what you will  do is first we will have one module let us say a
  578. 1:01:19then we will integrate another module with the a  and then we will check the communication between
  579. 1:01:24these two models again we will add one more  module and then check the communication between
  580. 1:01:31the models so we keep on adding a new modules  with the existing modules then test the data
  581. 1:01:38flow or communication between the modules which  is called as incremental integration testing
  582. 1:01:45so we keep on in adding the new  modules with the existing modules
  583. 1:01:49that is called incremental integration model  we are don't integrate all the modules at once
  584. 1:01:55we are integrating the models one after another  which is called as incremental integration testing
  585. 1:02:02the first one incrementally adding the models  and testing the data flow between the models
  586. 1:02:09incrementally adding the modules and testing the  data flow between the modules which is called as
  587. 1:02:14incremental integration testing there are two  kinds of incremental integration again there are
  588. 1:02:19two approaches we have so the first approach is  top-down approach and bottom-up approach i'm also
  589. 1:02:27talking still incremental integration testing okay  in the incremental integration testing we have
  590. 1:02:32a two approaches top-down approach and bottom-up  approach let us see what is top down and bottom-up
  591. 1:02:39in the both approaches we will incrementally add  multiple modules one after another and test the
  592. 1:02:45data flow between the models so let us see what  is top down approach what is bottom approach
  593. 1:02:52okay so first let us see top down approach  so what is stop down top down we can say
  594. 1:02:59top down incremental integration testing so  this is a terminology so top down approach
  595. 1:03:06in incremental integration testing  here observe this carefully here
  596. 1:03:13incrementally adding the modules and testing  the data flow between the models same thing
  597. 1:03:20and ensure the model is added is changed of the  previous model this is important point ensure the
  598. 1:03:28module added is a change of the previous model  ensure the model which is added as a channel of
  599. 1:03:34the previous model for example let us say i have  a model called a okay this is my actual model so
  600. 1:03:43when i integrate this model with another module  the another module should be the child of the
  601. 1:03:49existing module so this should be chilled  module and this should be the parent model
  602. 1:03:55okay so whatever model we are incrementally  adding that should be a chilled module
  603. 1:04:02and how we can understand this what is parent  model what is change model again let us take
  604. 1:04:07the gmail example so in the gmail example we have  two models let's say composing email is one model
  605. 1:04:16after login is successful we will compose the  email after composing and sending the email the
  606. 1:04:22same email comes to send items so right if you  want to check what are the emails we have sent
  607. 1:04:28we can verify in the sent items list right so  first which one we will do composing activity
  608. 1:04:35so once the compose is done that comes to the send  items until unless we compose an email that email
  609. 1:04:41cannot come to the sent items so here before sent  items first we have to do the compose so this is a
  610. 1:04:48parent module this is a change module okay compose  is a parent module sent item is a child model
  611. 1:04:54so in incremental integration testing in the  top down approach in the top down approach
  612. 1:05:01we will check the data communication between these  two models and make sure the module whichever we
  613. 1:05:08have added should be the change of the existing  model and tomorrow if you add another module
  614. 1:05:14deleted items here we can add deleted items this  is another change model further this particular
  615. 1:05:20model so whatever module we have added that should  be the chilled module of the existing module
  616. 1:05:27that is incremental integration testing top  down approach okay top down approach okay first
  617. 1:05:35top module then another module then another  model chilled models or we can say sub models
  618. 1:05:43okay that is a top down approach incremental  integration testing so incrementally adding
  619. 1:05:49the modules and testing the data flow between the  models ensure the module added is a chilled of the
  620. 1:05:56previous model okay this is a top-down approach  so this is an example if i remember this example
  621. 1:06:04it is very easy to remember okay first we will  compose a mail then only we can get the send items
  622. 1:06:10so this is a parent and this is a chain so  later if you want to add multiple modules
  623. 1:06:15those modules should be the chilled  modules of the existing model
  624. 1:06:19so this is called incremental integration testing  top down approach now come to the next one
  625. 1:06:30bottom-up approach okay there is one  more approach called bottom-up approach
  626. 1:06:38this is also incremental integration  the first one but here i'm talking
  627. 1:06:42about bottom-up approach what is bottom-up  approach in the bottom-up approach this is also
  628. 1:06:49same incrementally adding the modules and testing  the data flow between the modules same thing but
  629. 1:06:58here ensure the module which is added is a parent  of the previous model parent of the previous model
  630. 1:07:07remember in the top down approach whatever  the model we have added that should be the
  631. 1:07:12child of the previous model but this time what  i am saying to ensure the model which is added
  632. 1:07:18is a parent of the previous model parent  of the previous model what does it mean
  633. 1:07:25parent of the previous or parent of the  previous model so for example in the top down
  634. 1:07:31approach what we have done we have a parent  module and then we have added the chilled
  635. 1:07:36child model so this is top down approach in the  bottom up approach suppose i have one module a
  636. 1:07:45and i can add another module on top of this like  this now whatever model we are integrating that
  637. 1:07:53should be the parent module of the previous  model so for a b is a parent model and then
  638. 1:08:00another model okay this is a bottom up approach so  first we integrate one parent module will be there
  639. 1:08:10and whatever the new models we are adding or  integrating that should be the parent model okay
  640. 1:08:16now where we have to start the testing now first  we'll start testing here then we go here then we
  641. 1:08:22go here okay so this is an example so same example  you can take same compose email and send items
  642. 1:08:30when i say compose email after composing  email the email comes to the sent items
  643. 1:08:36so let us take this same example in the bot in  the top down approach first we composed email
  644. 1:08:43and then we verify the sent items because after  composing email then only the mail comes into sent
  645. 1:08:48items this is top down approach same thing  if you want to do bottom-up approach first
  646. 1:08:54we go to send emails and we refer the email is  present or not if the email is present that will
  647. 1:09:01be already composed that is already composed  so first we will start testing here we will
  648. 1:09:08get this model and then integrate the parent  model and combine we will test it we cannot
  649. 1:09:13test independent modules guys okay we have  to combine and test it because until unless
  650. 1:09:18we compose we cannot test the sent items first we  integrate the parent model and come do the testing
  651. 1:09:24in bottom up in bottom and top down approach  we'll integrate the chain module and then test it
  652. 1:09:30the ultimate goal is same integration testing  but the approach of integration is different
  653. 1:09:35top-down approach and bottom-up approach  okay top-down approach and bottom-up approach
  654. 1:09:42so this is so in the top-down incremental  integration incrementally adding the modules and
  655. 1:09:49testing the data flow between the models ensure  the module added is a child of the previous model
  656. 1:09:56same thing we do in incremental  integration of bottom up approach
  657. 1:10:00here also we incrementally adding the models  and testing the data flow between the models
  658. 1:10:05ensure the module is added is a parent of  the previous model parent of the previous
  659. 1:10:11model is this is a previous model if i add another  module this becomes a parent of the previous model
  660. 1:10:18this is comes under bottom-up approach and there  will be another approach interviews people may ask
  661. 1:10:25that is called sandwich approach okay sandwich or  hybrid approach this is just a combination of top
  662. 1:10:33down and bottom up simple okay so combination  we use both the combinations combination of
  663. 1:10:39top down and bottom approach is called as a  sandwich approach so these three approaches
  664. 1:10:45comes under integration incremental integration  testing incremental integration testing
  665. 1:10:54okay we are adding the modules incrementally one  after another and test the data flow between the
  666. 1:11:01modules the way of adding the modules is different  we can add a new models in top down approach
  667. 1:11:07or we can follow bottom up approach okay so this  is all about the first type of integration testing
  668. 1:11:14the next type is non-incremental integration it  is very simple stride forward in non-incremental
  669. 1:11:21testing we integrate all module at once  we integrate all the model in one shot
  670. 1:11:29we don't have any integrating multiple  models one after another suppose i have a
  671. 1:11:3410 models in my application we have to wait to  complete all 10 models and combine everything
  672. 1:11:40and start testing so simply that is  non-incremental integration testing so adding
  673. 1:11:47all the modules in one single shot and test  the data flow between the model which is
  674. 1:11:51called non-incremental but most of the times  we don't prefer this option because it has a
  675. 1:11:59three drawbacks what are the drawbacks the first  drawback is we might miss data flow between some
  676. 1:12:06modules suppose if you do incremental integration  one two three four there are less number of
  677. 1:12:13chances to miss the particular module but here we  are integrating all the modules as a single unit
  678. 1:12:20so while testing we may miss some model in  between there are some chances are there
  679. 1:12:26so that is one problem and if you find any defect  right it is very difficult to find out the defect
  680. 1:12:33is belongs to in which model because we already  integrated all the modules at once so it is very
  681. 1:12:38very difficult to find out the defect which is  belongs to in which module it is very difficult
  682. 1:12:44to understand the root cause of the defect so  because of these two drawbacks we don't prefer to
  683. 1:12:51do non-incremental integration testing guys okay  we always do incremental integration testing
  684. 1:12:58okay so increment integration testing means  what after combining multiple modules we are
  685. 1:13:06verifying the data flow between the models comes  under integration testing and again there are two
  686. 1:13:11kinds of integration testing one is incremental  integration testing non-incremental integration
  687. 1:13:17testing and again incremental integration  can be done in two different approaches
  688. 1:13:21top down and bottom up approach and uh and  also sandwich approach sandwich approaches
  689. 1:13:28also comes under this one the combination of two  approaches and non-incremental integration testing
  690. 1:13:34we are not going to increment any models  we are combining all the models at once
  691. 1:13:39and do the testing so that is non-incremental  integration testing so the drawbacks are two
  692. 1:13:45there are two drawbacks in the non-incremental  testing that's the reason we don't prefer to
  693. 1:13:49perform non-incremental integration testing so  this is one level of testing so so far how many
  694. 1:13:56levels we discussed unit testing we discussed  integration testing is also we discussed
  695. 1:14:02now let us talk about system testing so this  is the actual testing where we have to involve
  696. 1:14:07as a tester so system testing itself will take  two to three sessions guys okay that much is
  697. 1:14:13bigger we are going to discuss different type  of testings which we are going to conduct as
  698. 1:14:18part of system testing but now i'll just give you  very high level overview what is system testing
  699. 1:14:24what we are going to do in the system testing  in the coming sessions i will discuss in detail
  700. 1:14:29what exactly system testing means and what are  the different type of testings we will conduct
  701. 1:14:34so because this is the actual  area testers will be involved
  702. 1:14:38okay so what is system testing very very  important so testing overall functionality
  703. 1:14:47of the application with respect to the customer  or client requirements so here we are mainly
  704. 1:14:55focusing on the functionality of the application  what is the functionality of the application
  705. 1:14:59suppose customer says from requirement like in  my application in my software so and so should
  706. 1:15:05be there and they will give some requirement and  as a test what you will do is the requirement is
  707. 1:15:13present in software or not the requirement is  working properly or not the function is working
  708. 1:15:17properly or not the functionality is nothing but a  some feature of your application so simple example
  709. 1:15:23guys let us take a whatsapp in the whatsapp  what are the features or functionalities we have
  710. 1:15:28we can add the contact we can send the message we  can send the videos images right we can share the
  711. 1:15:36location map so these are all different features  of whatsapp okay so similarly every software every
  712. 1:15:43application is also having different number  of features so in the system testing we are
  713. 1:15:48going to test those features we are not going to  touch the code we are going to test the functional
  714. 1:15:55features functionality of the application  with respect to the customer requirement
  715. 1:15:59okay whether it is working to according customer  requirement or not that is a main intention of
  716. 1:16:04conducting system test system is what everything  and it is a black box testing technique because we
  717. 1:16:11are not going to touch the code we are getting the  ui application from the developers we will install
  718. 1:16:17it and we will completely test it and this testing  is conducted by the testing team and testers are
  719. 1:16:24responsible for this testing because here the main  thing is we have to know the requirement we have
  720. 1:16:30to thoroughly understand the customer requirement  understand the flow of application understand the
  721. 1:16:35ui that's more important we no need to understand  any code what is what is created by the developers
  722. 1:16:42okay so the requirement understanding is very very  important here so after completion of component
  723. 1:16:49or integration testing we start this system  testing this is a third level of testing yes
  724. 1:16:55first unit testing should be conducted  then integration testing will be done
  725. 1:17:00after that we will start system testing  until unless those testings are completed
  726. 1:17:05we cannot get the build or application from the  developer then we will start the system testing
  727. 1:17:11third level of testing so before conducting system  testing we should know the customer requirement
  728. 1:17:18as i said before we have to be understand system  call requirement from the customer thoroughly
  729. 1:17:24so we will have different documents provided  by the customers and designers and developers
  730. 1:17:29we will we will read those documents and  understand the requirement clearly and
  731. 1:17:34then only we can conduct the testing and system  testing is mainly focusing on four areas guys okay
  732. 1:17:42user interface testing functional testing  non-functional testing usability testing
  733. 1:17:47so these are the four main categories of system  testing we are going to conduct again in each and
  734. 1:17:54every category there are different type of testing  we will conduct okay in the coming sessions i will
  735. 1:18:00explain in detail what exactly these testings are  and what are other type of testings we can conduct
  736. 1:18:07in this category because before conducting the  testing we have to know what kind of testing we
  737. 1:18:13have to do we have to conduct that's the most  important right so that's the reason we are
  738. 1:18:17understanding this theoretically first if you  know the what then the next level is how if you
  739. 1:18:23know what type of testing should be conducted  then the next level we will know how to conduct
  740. 1:18:28those testings okay so that is the reason here we  are understanding what are the different testings
  741. 1:18:34will be there and where exactly tester will  involve what kind of testings the tester can do
  742. 1:18:40and once we understand this in the next level we  will see how we can do those testing practically
  743. 1:18:45so that we are going to focus so system testing  focuses mainly on four aspects user interface
  744. 1:18:52testing means what ui of the application so for  example if i give the amazon.com that is a ui so
  745. 1:19:00what you will test on the ui part so you are going  to test all the images properly aligned or not
  746. 1:19:06logo is display or not are like elements like  application elements like text boxes check boxes
  747. 1:19:12drop downs are properly displayed or not look  and feel of your application the colors and font
  748. 1:19:18so these things we are going to mainly focus that  is user interface testing okay and each and every
  749. 1:19:25flow is properly working or not and the navigating  between the pages so these things are comes under
  750. 1:19:30user interface testing the next level of next is a  functional testing this is also comes under system
  751. 1:19:37testing and in the functional testing we are  going to test the functionality of the application
  752. 1:19:43what is the functionality means the  navigations flow actual functionality
  753. 1:19:47suppose when i say banking application so we  test the login login is a one functionality
  754. 1:19:54and after successful login we will test  the balance check balance functionality
  755. 1:19:59and money transfer functionality adding pay is a  functionality generating report is a functionality
  756. 1:20:05request checkbook is one functionality so once  application is there there are a lot of main
  757. 1:20:10functionalities are there so we are going to test  those functionalities are properly working or not
  758. 1:20:16those features are properly working or not  that comes down to the functional testing
  759. 1:20:20okay so we have input domain testing error  handling testing database testing different
  760. 1:20:25type of testings will be there under functional  testing so we are going to discuss them in the
  761. 1:20:29coming sessions the next one is a non-functional  testing so non-functional in the sense like
  762. 1:20:36security testing performance testing installation  testing compatibility testing so these are all
  763. 1:20:42comes under non-functional testing so once the  functionality is stable then we'll start doing
  764. 1:20:48non-functional testing so if a function is working  perfectly fine then we will test the performance
  765. 1:20:55performance testing comes under non-functional  so what is performance testing means the speed
  766. 1:21:01of the application suppose if your application is  accessed by n number of people through internet
  767. 1:21:06you are checking the speed of your application how  well your application is responding to the users
  768. 1:21:11that is the speed of application but before  testing that we have to test the functionality
  769. 1:21:17stable or not that is very very important and  then non-functional testing will start will test
  770. 1:21:22the performance testing in this again load testing  trust testing volume testing compatibility testing
  771. 1:21:29security testing so there are different type  of testings will be there which are comes under
  772. 1:21:34non-functional testing and even in the real time  there will be a separate environment will be there
  773. 1:21:40to conduct non-functional testing and this is  also not done by the normal function testers
  774. 1:21:45there are separate dedicated team will be  there to conduct non-functional testing because
  775. 1:21:50that needs a different setup environment okay  normal environment will not be sufficient to
  776. 1:21:55conduct non-functional experts will be there  security testing performance testing so these
  777. 1:22:01testings are very very huge testings and a lot of  expertise is required to conduct those testings
  778. 1:22:07a special category of people will be there in the  team and they will take care of those testings
  779. 1:22:12and finally we have usability testing usability  testing in the sense uh user help suppose
  780. 1:22:21suppose if you bought some product a mobile  phone or any bike or car whatever along with
  781. 1:22:27those products you will also get some document  user manuals we can say what user manual contains
  782. 1:22:33how to use a product right so that user manual  is very very important and required for the users
  783. 1:22:40when along with the software we are also  going to provide the user manuals to the
  784. 1:22:45user our customer so we have to verify those user  manuals so that user manual having proper content
  785. 1:22:52or not how to install the product how to perform  the functionality each and every step whatever we
  786. 1:22:57do in the application will be documented that is  basically called as a user context and sometimes
  787. 1:23:03in our applications also you will see some help  menu at the corner even if you open the notepad
  788. 1:23:08or whatever you can see some help menu there  you can get the help of that particular product
  789. 1:23:13so those things we are going to focus while doing  usability testing so user friendly how friendly
  790. 1:23:18your application is for the customer so that is  usability testing okay so these are all comes
  791. 1:23:25under system testing the overall functionality  not only functionality non-functional aspects
  792. 1:23:32also we are going to test as part of system  testing okay so here actual testers are involved
  793. 1:23:41very very important so next coming three  to four sessions we are mainly focusing on
  794. 1:23:46only system testing because this is the exact  area where we have to more focus on and after
  795. 1:23:52system testing the last level of testing is user  acceptance testing uat testing this is the last
  796. 1:24:00level after completion of system testing  user acceptance testing will be conducted
  797. 1:24:07so user acceptance testing normally conducted by  the customers or users who are using the software
  798. 1:24:16and everything is working fine then they will  accept the software okay whatever the requirement
  799. 1:24:21they have given they will finally verify those  requirements are satisfying with this product
  800. 1:24:26or not so the main testing will be done by the  users or customers or testers or developers can
  801. 1:24:33be do some help on them so they can assist them  so testers also sometimes will be involved in
  802. 1:24:40the user acceptance testing along with the user  so here we have again again multiple things like
  803. 1:24:47alpha testing beta testing will be there so after  completion of system testing uat team conducts
  804. 1:24:53acceptance testing in different levels like alpha  testing and beta testing something like this alpha
  805. 1:24:58testing in the sense the users or customers  will do the testing and development environment
  806. 1:25:04development or testing environment or means what  they will come back to the company wherever the
  807. 1:25:09software is developed they will come back to the  company and do some testing that is alpha testing
  808. 1:25:16after that they will get the software  and install that in their environment
  809. 1:25:22install that in their environment in the  customer environment and then do some
  810. 1:25:26basic testing that comes on the beta testing  after completion of these two testings our
  811. 1:25:32product or software will go to production and then  actual customers will start using the software
  812. 1:25:39okay so this is user acceptance testing the  last level of testing so we have discussed
  813. 1:25:46four levels of testing guys one is unit level unit  testing integration testing system testing user
  814. 1:25:55acceptance testing so in the coming sessions we  will talk more about system testing because this
  815. 1:26:02is the actual area we have to involve and n number  of testings we are going to conduct so what are
  816. 1:26:08those testings that we have to learn first after  learning then we will see practical implementation
  817. 1:26:16how we can conduct those testings before  that we have to know what are those testings
  818. 1:26:20and then we will know how we can conduct  the testing okay so that is a concept of
  819. 1:26:27levels of software testing guys okay so in the  next session tomorrow we are going to discuss
  820. 1:26:34rest of the system testing gui testing in detail  so these are all comes under again system testing
  821. 1:26:41okay so that's all for today's  session guys i'm just stopping here
  822. 1:26:45now if you have anything you can discuss okay

About this transcript

This page contains the full transcript of Manual Software Testing Training Part-3 by SDET- QA, generated from the public captions YouTube serves with the video. The transcript has 13,661 words across 822 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.