YouTube2Text

Manual Software Testing Training Part-5 — Transcript

by SDET- QA · 12,959 words · 2,318 segments · language en · Watch on YouTube

Full transcript

  1. 0:01All right.
  2. 0:02So in the today's session, uh we are
  3. 0:04going to see some of the important
  4. 0:06terminologies in software testing.
  5. 0:08So so far we have seen like sort what is
  6. 0:10a functional testing types and what are
  7. 0:12the non-functional testing types in the
  8. 0:14previous session, right?
  9. 0:16So in the today's session, we have to
  10. 0:18learn some of the important
  11. 0:19terminologies. So in the IT industry,
  12. 0:22especially in the software testing on
  13. 0:23day-to-day basis, uh
  14. 0:25we frequently use these terms. So we
  15. 0:27have to know what is the exact meaning
  16. 0:29of those terms.
  17. 0:31Like regression testing, retesting, or
  18. 0:33smoke and sanity testing, exploratory
  19. 0:35testing, or ad-hoc testing, monkey
  20. 0:38testing, positive and negative testing,
  21. 0:41end-to-end testing. So these are the
  22. 0:42different terms most of the times we use
  23. 0:45on day-to-day basis in the software
  24. 0:47industry, okay?
  25. 0:48So we have to know exactly what is the
  26. 0:50meaning of these terms.
  27. 0:52Now let us discuss what exactly they
  28. 0:54are.
  29. 0:55So first one is regression testing. So
  30. 0:57let me write the notes.
  31. 0:59Software testing terminology. So the
  32. 1:01first type of testing is regression
  33. 1:04testing. So let's try to understand this
  34. 1:06very clearly by which is very very
  35. 1:07important and especially for interview
  36. 1:09also.
  37. 1:11So please listen this carefully.
  38. 1:13So first is regression testing. So what
  39. 1:15exactly regression testing means?
  40. 1:18So let me just give you a small example
  41. 1:20for
  42. 1:21regression testing.
  43. 1:22Sometimes uh your application is having
  44. 1:25multiple modules, right? So application
  45. 1:27is having multiple modules.
  46. 1:29So what developer will do? For example,
  47. 1:31let us say I have few modules. Let's say
  48. 1:33one, two, three, four. So I have four
  49. 1:38different modules in your application.
  50. 1:40So what developer will do is suppose you
  51. 1:42found some a bug in your some module. So
  52. 1:45let's say I have found some bug in this
  53. 1:47or I have found some defect in the
  54. 1:48particular module.
  55. 1:50So what I will do as a tester? I'll
  56. 1:52report that defect to the developer.
  57. 1:54Okay, I report that defect to the
  58. 1:56developer.
  59. 1:57So what developer will do is developer
  60. 2:00will modify that. In this particular
  61. 2:02module, developer will fix that bug.
  62. 2:05And then they release a new new build.
  63. 2:09So for example,
  64. 2:10let us say I have first build. Build is
  65. 2:12nothing but a software, okay? Small
  66. 2:14piece of software.
  67. 2:15Let us say build one.
  68. 2:17In the build one, I reported one bug to
  69. 2:19the developer.
  70. 2:21I found one bug in the build one.
  71. 2:23And I reported that bug to the
  72. 2:25developer.
  73. 2:26So what developer will do is developer
  74. 2:28fix that bug.
  75. 2:30And again release another build called
  76. 2:32build number two. Let us say build two.
  77. 2:34This is the second build.
  78. 2:36So as a tester, what I have to do in the
  79. 2:39second build?
  80. 2:40So let's say build contains a multiple
  81. 2:42modules, okay? Let's say build two
  82. 2:44contains or build one contains a four
  83. 2:46different modules. In some module, I
  84. 2:48found some bug and reported to the
  85. 2:49developer.
  86. 2:51Developer fix that bug bug in that
  87. 2:52particular module and then release a
  88. 2:54another build.
  89. 2:56So in the build number two, as a tester,
  90. 2:58what I will do is I will verify that bug
  91. 3:01whether it is fixed or not, it is
  92. 3:03working fine or not.
  93. 3:05And uh sometimes what happens is because
  94. 3:07of that change or sometimes my developer
  95. 3:10fix the bug. Apart from the bug, they
  96. 3:12may add some new functionality also in
  97. 3:14the build number two. Or they may delete
  98. 3:16the existing functionality or they
  99. 3:18modify the existing functionality. So
  100. 3:20whenever the dev is doing some changes
  101. 3:22in the build,
  102. 3:24because of that change, there should not
  103. 3:26be impact on other modules. So for
  104. 3:28example, in the module number one, he
  105. 3:30did some change.
  106. 3:32And that should not impact on other
  107. 3:34modules. Because there will be some
  108. 3:36connection between modules in the
  109. 3:37application, right? There will be some
  110. 3:39integration takes place.
  111. 3:41So whenever the dev is done some change
  112. 3:43on particular build or particular
  113. 3:45module,
  114. 3:46there should not be any impact on other
  115. 3:49modules.
  116. 3:50So that we have to test, which is called
  117. 3:52as regression testing.
  118. 3:54So during the regression testing, tester
  119. 3:56will verify the
  120. 3:59bug fixes or a new functionality or
  121. 4:01modification.
  122. 4:03Because of those changes, there should
  123. 4:05not be impact on other modules. And
  124. 4:07along with that bug fixes and uh new
  125. 4:09functionalities, testers will also test
  126. 4:11the other dependent modules.
  127. 4:14Okay? Other dependent modules. So that
  128. 4:17is called as a regression testing. Let
  129. 4:19me just share a small presentation.
  130. 4:23Okay? So now you can Here you can look
  131. 4:25at here. So testing conducts on modified
  132. 4:28build
  133. 4:30to make sure there will not be impact on
  134. 4:32existing functionality because of
  135. 4:35changes like adding, deleting, modifying
  136. 4:38the features. So this is a commonly
  137. 4:40happen uh while testing that
  138. 4:42applications, okay? Whenever you report
  139. 4:44a defect to the developer, developer
  140. 4:46will fix it.
  141. 4:47And because of that fix, he may add some
  142. 4:50new functionality or he may delete the
  143. 4:51existing functionality or he may modify
  144. 4:53the some features. And those should not
  145. 4:56affect in the existing functionality. So
  146. 4:58that you have to make sure. And you have
  147. 5:00to test that changed functionality along
  148. 5:03with this impacted functionality. So
  149. 5:05what on other modules will be impacted
  150. 5:07because of that change, you have to make
  151. 5:09sure. So existing functionality should
  152. 5:11not be broken because of new changes or
  153. 5:14bug fixes. So that is basically called
  154. 5:16as regression testing. Very very
  155. 5:19important. Okay, definitely people will
  156. 5:21ask this question in interview. So what
  157. 5:23is regression testing? Regression
  158. 5:24testing conduct conducts on modified
  159. 5:27builds
  160. 5:28whether the bug fixes or new changes are
  161. 5:31working fine or not. And there should
  162. 5:33not be any impact on
  163. 5:36other builds or other functionality.
  164. 5:38Okay? And regression testing can be done
  165. 5:41in three different ways. So there are
  166. 5:42three types of regression testings we
  167. 5:44have.
  168. 5:45Unit regression testing,
  169. 5:47regional regression testing, full
  170. 5:49regression testing. Unit regression
  171. 5:51testing, regional regression testing,
  172. 5:53full regression testing.
  173. 5:55Let us understand what exactly is unit
  174. 5:57regression testing means.
  175. 5:59Testing only the changes or
  176. 6:01modifications done by the developer.
  177. 6:04So in the unit regression testing, what
  178. 6:07you will do is suppose we have four
  179. 6:10different modules
  180. 6:12and we reported one bug on that
  181. 6:14particular module to the developer.
  182. 6:16And developer fix that bug in that
  183. 6:18particular module and we will test only
  184. 6:21that module. We'll test only that
  185. 6:23particular component and impacted areas
  186. 6:25also related to that particular
  187. 6:27component.
  188. 6:28So testing a specific module where
  189. 6:31exactly we reported the bug is called as
  190. 6:34unit regression testing, the first type
  191. 6:36of testing. Testing only the changes or
  192. 6:39modification done by the developer. So
  193. 6:42what exactly the change part?
  194. 6:44Okay? So where exactly developer is
  195. 6:47modified, where exactly the developer is
  196. 6:49changed, only that particular part we
  197. 6:51are going to test. We are going to test
  198. 6:53the
  199. 6:54bug also, okay? So in the unit
  200. 6:56regression testing, whatever bug we
  201. 6:58reported,
  202. 7:00we will verify whether the bug is fixed
  203. 7:02or not.
  204. 7:03And
  205. 7:05change area. So because of that bug,
  206. 7:07what are all developer has changed?
  207. 7:10So developer will intimate you what are
  208. 7:11all other components have got changed
  209. 7:13because of this defect. So we will test
  210. 7:15only those components. Okay? That is
  211. 7:18called unit regression testing means
  212. 7:21testing only the changes or
  213. 7:23modifications done by the developer.
  214. 7:26Only changes or modification will be
  215. 7:27tested.
  216. 7:29But regional regression testing, there
  217. 7:31is another type of testing called
  218. 7:33regional regression testing.
  219. 7:35In this regression testing, we test the
  220. 7:37modified module
  221. 7:39along with the impacted modules.
  222. 7:42Testing the modified module along with
  223. 7:44the impacted modules. What does it mean?
  224. 7:47In the first unit regression testing,
  225. 7:50what are all changes have been done by
  226. 7:52the developer, we tested only those
  227. 7:54changes. Okay? Only that particular
  228. 7:57module.
  229. 7:58But
  230. 7:59in another type of regression testing,
  231. 8:01regional regression testing, what you
  232. 8:02will do is what are all changes have
  233. 8:05done by the developer, those changes
  234. 8:08along with that im- dependent modules
  235. 8:11and what are all other modules are
  236. 8:12impacted. And those modules or those
  237. 8:15features also will be tested. That is
  238. 8:17called regional regression testing.
  239. 8:19So in the unit regression testing, we
  240. 8:20are just verifying
  241. 8:22the changes have been done by the
  242. 8:24developer.
  243. 8:25Whereas regional regression testing, we
  244. 8:27are also going to test
  245. 8:29along with the changes, we are also
  246. 8:31going to test the impacted area. Suppose
  247. 8:34this may impact on other modules or some
  248. 8:36other feature. And those also we need to
  249. 8:38verify
  250. 8:39in the regional regression testing.
  251. 8:42But how we will know the reason how we
  252. 8:44will know the impacted areas?
  253. 8:46So what happens is in the regional
  254. 8:49regression testing,
  255. 8:50there will be a meeting called impact
  256. 8:53analysis meeting. There will be a
  257. 8:55meeting called impact analysis meeting
  258. 8:57conducts to identify impacted modules
  259. 9:00with a QA and dev.
  260. 9:02As soon as the dev is modified
  261. 9:03something, and dev and QA see together,
  262. 9:07and they will discuss where exactly that
  263. 9:09particular change or bug fix will be
  264. 9:12impacted.
  265. 9:13So that will be conducted between QA and
  266. 9:16dev. So they do some kind of impact
  267. 9:19analysis meeting. Impact analysis means
  268. 9:21what? Interview question again. What is
  269. 9:23impact analysis? So during impact
  270. 9:25analysis meeting, we will identify the
  271. 9:28impacted modules
  272. 9:30because of new changes, because of
  273. 9:33adding a new functionality, because of
  274. 9:35deleting the existing functionality, or
  275. 9:37because of modifying the existing
  276. 9:38functionality, or because of bug fixes.
  277. 9:42So because of all these reasons, there
  278. 9:43will be
  279. 9:44some functionality will be impacted. We
  280. 9:48will identify that feature or identify
  281. 9:50those functionalities is called as
  282. 9:53identify those functionalities and test
  283. 9:54those functionality. That is called as
  284. 9:56regional regression testing, which is
  285. 10:00called as regional regression testing.
  286. 10:03So,
  287. 10:04understood the difference? The first
  288. 10:05unit regression testing, only the
  289. 10:07changes done by the developer we will
  290. 10:09test.
  291. 10:10But in the regional regression testing,
  292. 10:12we are going to test the changes
  293. 10:14along with this
  294. 10:16impacted areas also we are going to
  295. 10:18test. But how we will know the impacted
  296. 10:19areas?
  297. 10:20During impact analysis meeting
  298. 10:23with the developers, we will consolidate
  299. 10:25all the impact and impacted meet
  300. 10:28impacted functionalities or impacted
  301. 10:29features and we will test those features
  302. 10:31also.
  303. 10:33That is regional regression testing.
  304. 10:36There is another testing called as full
  305. 10:38regression testing. Full regression
  306. 10:39testing. Understand this difference.
  307. 10:41Full regression testing means what?
  308. 10:44Let us say, I have multiple modules in
  309. 10:47my application. Let us say, 1 2 3 4 5 6.
  310. 10:51There are multiple modules are there in
  311. 10:53my application.
  312. 10:55So, I have reported one bug in
  313. 10:58particular module
  314. 10:59to the developer.
  315. 11:01Okay?
  316. 11:02And the developer, what the developer is
  317. 11:05done is the developer
  318. 11:08fixed that bug on that particular module
  319. 11:11and by fixing the bug, he has modified a
  320. 11:14lot on other modules also, the other
  321. 11:16functionalities. Almost
  322. 11:18for 100 100% features in these modules,
  323. 11:21almost 80% of the features are got
  324. 11:23modified.
  325. 11:24So, developer
  326. 11:27while fixing the bug, he is also touched
  327. 11:30other modules
  328. 11:31and also he modified a lot of other
  329. 11:34functionalities in other modules. Almost
  330. 11:3580% of the modules, he has almost
  331. 11:38modified them.
  332. 11:40Because of fixing this bug. At the time
  333. 11:42of fixing the bug, developer modified
  334. 11:44almost every module.
  335. 11:47So, in that case
  336. 11:48we don't do normally impact analysis.
  337. 11:51Why? Because almost 80% of the code is
  338. 11:55modified.
  339. 11:56Right? So, because of that change,
  340. 11:59instead of doing impact analysis
  341. 12:03we can do one and full round of
  342. 12:05regression testing. What does that mean?
  343. 12:07Just for doing impact analysis on
  344. 12:10specific module, that is again wasting
  345. 12:12of time here because he's almost
  346. 12:15modified each and every module in your
  347. 12:17application. Almost everywhere he
  348. 12:19modified because of that bug fix.
  349. 12:22So, instead of doing impact analysis on
  350. 12:24every module, identifying the scenarios,
  351. 12:26it again takes a lot of time and it is a
  352. 12:28wasting of time.
  353. 12:30So, instead of doing that we will do one
  354. 12:33full round of regression. So, we will
  355. 12:35test almost every module which is
  356. 12:38modified by the developer
  357. 12:40because of that bug fix.
  358. 12:42That is called as a full regression
  359. 12:44testing.
  360. 12:45So, here impact analysis cannot be done
  361. 12:47because he's almost modified every
  362. 12:49module. Instead of if we do impact
  363. 12:51analysis in this case, it is again
  364. 12:52wasting of time. So, instead of wasting
  365. 12:55the time, we will do one round of full
  366. 12:57regression. Um means we will test each
  367. 13:00and every module
  368. 13:02which is recommended by the developer.
  369. 13:04So, that is called as full regression
  370. 13:07testing. So, let me repeat once again.
  371. 13:10So, regression testing means what?
  372. 13:12Whatever bug fixes, sometimes on the
  373. 13:14build developer may add a new
  374. 13:16functionality or delete the
  375. 13:18functionality or modify the
  376. 13:19functionality or sometimes he may fix
  377. 13:22the bugs.
  378. 13:23And because of those changes, the
  379. 13:25existing functionality which is already
  380. 13:27there in the application should not be
  381. 13:29impacted
  382. 13:30or should not be broken.
  383. 13:32To make sure what you will do, we will
  384. 13:34test the changes from the developer
  385. 13:37along with the existing functionality of
  386. 13:39the application. That is called as a
  387. 13:40regression testing.
  388. 13:42So, unit regression testing, regional
  389. 13:44regression testing, full regression
  390. 13:46testing.
  391. 13:47In the unit regression testing, we
  392. 13:49testers only
  393. 13:51test the changes or modifications done
  394. 13:53by the developer.
  395. 13:55Whereas in the regional regression
  396. 13:56testing
  397. 13:57testing the modified module along with
  398. 14:00the impacted areas. And how we will know
  399. 14:02the impacted areas?
  400. 14:04In impact analysis meeting, we conduct
  401. 14:07the conduct to identify impacted modules
  402. 14:10or impacted areas
  403. 14:12and where we will discuss along with QA
  404. 14:14and dev. And then we'll identify the
  405. 14:16impacted areas and we will test them
  406. 14:18along with the changes. That is called
  407. 14:19regional regression testing.
  408. 14:22So, full regression testing means what?
  409. 14:24Testing the main feature and remaining
  410. 14:27part of the application. Almost
  411. 14:29everything we will test in the full
  412. 14:30regression because developer has changed
  413. 14:33a lot of things. He modified each and
  414. 14:35everything in the build. Almost 80% of
  415. 14:37the code is modified. So, instead of
  416. 14:39identifying impact impacted area, one
  417. 14:42round of full regression we will do
  418. 14:43that.
  419. 14:44So, that is called as full regression.
  420. 14:46Okay, that is a example. So, dev has
  421. 14:48done some changes in many modules.
  422. 14:51Instead of identifying impacted modules,
  423. 14:53we perform one round of full regression.
  424. 14:56Okay? So, this is all about regression
  425. 14:58testing. So, we have unit regression
  426. 15:00testing, regional regression testing and
  427. 15:03full regression testing.
  428. 15:05So, are you guys clear on this?
  429. 15:07Please confirm in the chat window what
  430. 15:09is regression testing.
  431. 15:11Very, very important testing.
  432. 15:14So, we have to test the modifications or
  433. 15:16bug fixes, new functionality, existing
  434. 15:19function. Because of those changes
  435. 15:21should not be impacted. Other
  436. 15:23functionality should not be impacted.
  437. 15:24That is called as regression testing.
  438. 15:28All right?
  439. 15:29So, next we'll move on to the
  440. 15:32retesting. The next terminology is
  441. 15:35retesting.
  442. 15:41Retesting. So, what is a retesting?
  443. 15:43Retest.
  444. 15:45Test again. The term itself is says
  445. 15:47retesting means
  446. 15:49we have to conduct the testing again and
  447. 15:51again. That is called retesting.
  448. 15:53So, what exactly it means? Let me give
  449. 15:55you one example. Retesting.
  450. 15:58Suppose in my application
  451. 16:00let's say I have my build in my
  452. 16:02application
  453. 16:03I found one defect.
  454. 16:05Okay, I found the defect.
  455. 16:08And I reported that defect to the
  456. 16:09developer.
  457. 16:11I reported to the developer. I reported
  458. 16:13that bug to the developer.
  459. 16:15So, once the developer will fix that bug
  460. 16:18and again will provide the another
  461. 16:19build.
  462. 16:21Okay, he will provide the another build.
  463. 16:23So, in the let's say this is my build
  464. 16:25number one, this is my build number two.
  465. 16:28In the next version of build uh that is
  466. 16:30build number two whatever defect we
  467. 16:32already reported in build number one
  468. 16:34the bug again we will verify in the
  469. 16:37build number two.
  470. 16:39That is called as a retesting.
  471. 16:41So, regression retesting means what?
  472. 16:43Whatever bugs we reported in the
  473. 16:45previous builds those bugs are fixed or
  474. 16:48not, we will verify in the upcoming
  475. 16:50builds.
  476. 16:51That is called as a retesting.
  477. 16:54So, why you're calling retesting means
  478. 16:55we already tested this functionality, it
  479. 16:58is
  480. 16:59not working earlier. But now again we
  481. 17:01are testing the same functionality
  482. 17:04whether it is working fine or not in the
  483. 17:06build number two. That is called as
  484. 17:08retesting.
  485. 17:10Retesting.
  486. 17:12Okay, retesting. So, whatever we
  487. 17:14reported the bug which is fixed in the
  488. 17:16next build and then again we are
  489. 17:18retesting the same functionality whether
  490. 17:20it is working fine or not.
  491. 17:22That is called as a retesting. Simple.
  492. 17:24But in the regression testing, what you
  493. 17:26will do? We will test that functionality
  494. 17:28along with the other functionalities
  495. 17:30also, impacted areas also we are tested.
  496. 17:33But in the retesting, we just verify the
  497. 17:36bugs what we have reported earlier
  498. 17:39and whatever the bug fixes we got, we
  499. 17:41verify only those bugs. That is called
  500. 17:44retesting.
  501. 17:45Small difference. Let me understand
  502. 17:47again.
  503. 17:48Whenever the developer fixed a bug
  504. 17:52tester will test the bug fix is called
  505. 17:54as a retesting. So, what is bug fix
  506. 17:56means? Bug fix is a nothing but a fixed
  507. 17:59bug. Whatever the bug is already
  508. 18:01developer fixed, that is called as a bug
  509. 18:03fix. It's a technical term.
  510. 18:05So, whenever the developer fixed a bug
  511. 18:09what tester will do? Tester will test
  512. 18:11the bug fix which is called as a
  513. 18:13retesting.
  514. 18:14Because we are testing again whenever
  515. 18:16the developer fixed that bug.
  516. 18:18And tester close that bug if it is
  517. 18:21worked. Otherwise, he again reopen and
  518. 18:24send to the developer.
  519. 18:25This is again continuous process, guys.
  520. 18:27Suppose we reported the developer we
  521. 18:30reported the bug to the developer.
  522. 18:32Developer is given the bug fix. Again,
  523. 18:34if it is not working, what you will do?
  524. 18:36Again, we will report to the developer.
  525. 18:38And again, developer will fix it and
  526. 18:39give back. Again, we will retest it.
  527. 18:42If it is working fine, we will close
  528. 18:43that bug. If it is not working, again we
  529. 18:45reopen and again resend to the
  530. 18:47developer.
  531. 18:49So, this is a continuous process until
  532. 18:51unless the bug is or defect is closed,
  533. 18:53we keep on reporting the bugs, we keep
  534. 18:55on reopening the bugs.
  535. 18:57So,
  536. 18:59tester close the bug if it is worked.
  537. 19:02Otherwise, he reopens and resend to the
  538. 19:05developer.
  539. 19:07And to ensure that the defects which
  540. 19:09were found and posted in the earlier
  541. 19:11build were fixed or not in the current
  542. 19:13build. So, the main intention of
  543. 19:15conducting the retesting is whatever
  544. 19:17bugs we reported in the previous builds
  545. 19:20they are fixed in the new build or
  546. 19:23current build or not.
  547. 19:25So, that is a main intention of doing
  548. 19:26retesting.
  549. 19:28And the next examples, suppose let us
  550. 19:30say build number one, 1.0 was released.
  551. 19:34And tested team found some defects. Let
  552. 19:36us say, 1.0.1,
  553. 19:381.0.2 and posted those defects or
  554. 19:41reported those defects into the
  555. 19:43developer.
  556. 19:44Now, in the build number 1.1, that is
  557. 19:46the next build or next release. Now,
  558. 19:48what tester should do? Now, testing
  559. 19:51the defects, same whatever reported in
  560. 19:54the previous builds, we are again
  561. 19:56verifying those defects working fine or
  562. 19:58not. That is called as a retesting.
  563. 20:02Okay, understand the difference. So,
  564. 20:03retesting means whatever bugs we
  565. 20:05reported in the previous build,
  566. 20:07in the next build, we are verifying the
  567. 20:09same functionality whether the developer
  568. 20:12is fixed those bugs or not. We are
  569. 20:13retesting the same functionality again
  570. 20:16and again. So, for retesting the
  571. 20:18functionality, what you are doing? We
  572. 20:19are executing the test case again and
  573. 20:21again.
  574. 20:23Okay, so if you want to test some
  575. 20:24functionality, we will have one test
  576. 20:26case. We will execute the test case.
  577. 20:27What is a test case means? Step-by-step
  578. 20:29execution. So, what we are executing
  579. 20:32certain steps and working fine or not.
  580. 20:33What is expected? What is actual?
  581. 20:35Expected and actual is exactly matching
  582. 20:37or not. So, that we are calling as a
  583. 20:39test case.
  584. 20:41So, in the first build, whatever the bug
  585. 20:43we reported, and that bug is fixed or
  586. 20:45not in the next build. To verify that,
  587. 20:48we have to execute the same test case
  588. 20:49again.
  589. 20:50So, executing the test cases again and
  590. 20:52again is also called as a retesting.
  591. 20:55Verifying the functionality again and
  592. 20:56again in the upcoming builds is called
  593. 20:58as a retesting.
  594. 21:00Okay, so regression testing and the
  595. 21:02retesting. So, have clarity on these
  596. 21:04two. Very, very important. And people
  597. 21:06will ask in interview also, what is the
  598. 21:08difference between retesting and
  599. 21:10regression testing? So, in the
  600. 21:11retesting, we are just verifying the
  601. 21:14bugs. Whatever we reported earlier, in
  602. 21:17the coming builds, they are fixed or
  603. 21:18not. So, retesting the functionality.
  604. 21:21But, in the regression testing, whatever
  605. 21:24bugs we reported in the previous builds,
  606. 21:26along with that, the new functionality
  607. 21:28which is added or modified or deleted.
  608. 21:31Because of those changes, there should
  609. 21:32not be impact on the other areas. Other
  610. 21:35impacted areas also we are going to test
  611. 21:37as part of regression testing.
  612. 21:39So, this is a basic difference between
  613. 21:41retesting and regression testing. So,
  614. 21:44very, very important question in
  615. 21:46interview.
  616. 21:47So, are you guys clear on this?
  617. 21:49Difference between retesting and
  618. 21:51regression testing. Everybody, please
  619. 21:52confirm in the chat window.
  620. 21:57So, retesting and regression testing.
  621. 22:05Okay, great. So, now let us move on to
  622. 22:07the next type of testing.
  623. 22:11So, the next type of testing is
  624. 22:16So, before going to the next example,
  625. 22:18let me just give you one more example.
  626. 22:20Retesting versus regression testing.
  627. 22:22Okay, so this is one testing, then you
  628. 22:23can understand very clearly.
  629. 22:28Okay.
  630. 22:31Now, let me just give you one small
  631. 22:33example before going to the next type of
  632. 22:35testing. So, retesting and regression
  633. 22:38testing. So, let us see the basic
  634. 22:39understanding and difference. So, let us
  635. 22:41say I have three features on my
  636. 22:43application. Let's say admin, purchase,
  637. 22:47and finance. Okay, there is an admin
  638. 22:49feature in my application or admin
  639. 22:51module.
  640. 22:52Purchase and finance. And these three
  641. 22:55modules are dependent. Okay, purchase
  642. 22:57module is depend on admin.
  643. 22:59Finance module is depends on
  644. 23:02purchase. So, they are integrated
  645. 23:03modules. Okay.
  646. 23:05And admin, purchase, and finance.
  647. 23:08So, here, let us say tester found a bug
  648. 23:11on purchase module. So, purchase is one
  649. 23:13module and tester found some bug in
  650. 23:15that. And also posted to the developer
  651. 23:17or reported to the developer.
  652. 23:19So, once the developer is fixed that bug
  653. 23:22in the purchase module,
  654. 23:24in the retesting, what you will do? You
  655. 23:26will verify only that particular bug,
  656. 23:29whether it is fixed or not. We will
  657. 23:31retest that functionality.
  658. 23:33That is retesting.
  659. 23:35But, because of that bug, because of
  660. 23:38those changes,
  661. 23:40the finance module also will be impacted
  662. 23:42because this is also depends on the
  663. 23:44purchase module.
  664. 23:45Okay, this is an impacted module.
  665. 23:48So, in the regression testing, what you
  666. 23:49will do? Apart from the bug fix, we are
  667. 23:51also going to test the finance module.
  668. 23:55Okay, that is a regression testing. So,
  669. 23:57retesting means testing the only the bug
  670. 24:00fix.
  671. 24:01No other functionalities.
  672. 24:03In the regression testing,
  673. 24:05verifying the bugs along with the
  674. 24:06impacted functionalities. And those
  675. 24:08impacted functionalities can be there in
  676. 24:10the same module or other module,
  677. 24:13sometimes in every module in our
  678. 24:15application.
  679. 24:16Okay, so
  680. 24:18understand the difference. So, if you If
  681. 24:20you do the changes, if you do the
  682. 24:22If you do If you test the impacted areas
  683. 24:25only within that module because of that
  684. 24:27change, that is unit regression testing.
  685. 24:29And if you test the impacted areas in
  686. 24:33other modules, one or two modules, then
  687. 24:35that is called regional regression
  688. 24:37testing.
  689. 24:38If you conduct testing on every module
  690. 24:40because of that change, which is called
  691. 24:42as full regression testing.
  692. 24:43Okay, just understand the difference.
  693. 24:45Retesting and regression testing.
  694. 24:49Now, let us move on to the another
  695. 24:51testing called smoke and sanity testing.
  696. 24:54Smoke and sanity testing.
  697. 24:57Okay, now let us discuss that. Smoke
  698. 25:00testing and sanity testing. These are
  699. 25:03also very, very, very important and
  700. 25:05definitely interview people will ask
  701. 25:07you. Smoke testing and sanity testing.
  702. 25:09Let us try to understand what exactly
  703. 25:11they are.
  704. 25:12First, let us start with the smoke
  705. 25:14testing and then sanity testing.
  706. 25:16Smoke testing.
  707. 25:18And both are basically basic
  708. 25:21functionality testing. So, in the smoke
  709. 25:22or sanity testing, we don't test the
  710. 25:24application in detailed. Very basic
  711. 25:27functionality we are going to test. Very
  712. 25:30basic functionality we are going to
  713. 25:31test. Let us understand the first smoke
  714. 25:34testing. What is a smoke testing?
  715. 25:37So, whenever the developer is provided a
  716. 25:40build to the tester, let us say
  717. 25:42developer
  718. 25:44is providing the build to the tester
  719. 25:47or we can say tester team.
  720. 25:50So, as soon as we get the build from the
  721. 25:52developer,
  722. 25:53build is nothing but a software, a piece
  723. 25:55of software which contains some number
  724. 25:57of features. Okay,
  725. 25:59so whenever we get the build from the
  726. 26:01developer,
  727. 26:02as a tester, what you will do is you
  728. 26:05don't directly
  729. 26:07go in deeper of application. So, you do
  730. 26:10some basic functionality testing. You do
  731. 26:12some basic functionality testing. What
  732. 26:14is basic functionality testing means? As
  733. 26:17soon as you get the build from the
  734. 26:18developer, first you will verify you got
  735. 26:22the complete build or not. You got the
  736. 26:24installer properly or not or is there
  737. 26:26any files are missing in the installer.
  738. 26:28That you will verify.
  739. 26:30And then you will do installation part.
  740. 26:33So, you install the build in your QA
  741. 26:35environment. And installation is
  742. 26:37perfectly working or not.
  743. 26:39Build is basically stable or not
  744. 26:41to continue further testings.
  745. 26:44So, you have to mainly focus on that
  746. 26:46area. That is mainly called as smoke
  747. 26:48testing. Smoke testing in the sense,
  748. 26:51you're basically verifying the health
  749. 26:54checkup of that particular build.
  750. 26:55Whether the particular build is stable
  751. 26:58on your environment or not. Properly
  752. 27:00install or not.
  753. 27:02And basic navigations are working or
  754. 27:04not. For example, when I open the URL,
  755. 27:06I'm getting the home page or not. When I
  756. 27:08click on something, some link, which is
  757. 27:11navigating to the next page or not. The
  758. 27:13basic level of testing you are
  759. 27:15performing before conducting the
  760. 27:17in-detailed testing or in-depth testing.
  761. 27:19That is called as a smoke testing.
  762. 27:22Okay, smoke testing is a basic
  763. 27:24functionality testing, which is also
  764. 27:26called as a build verification testing.
  765. 27:29Because here we are not focusing on the
  766. 27:32major features of application. We are
  767. 27:34just focusing on the
  768. 27:36build. We are just focusing on the
  769. 27:38build. Whether the build, the software
  770. 27:41contains all the files properly or not
  771. 27:44or anything is missing. And build is
  772. 27:46properly installing in our QA
  773. 27:48environment or not without any issues.
  774. 27:50And once successfully installed, whether
  775. 27:52we are able to navigate between the
  776. 27:54pages properly or not. This is called as
  777. 27:56a smoke testing. Very, very basic
  778. 27:58functionality testing is called as a
  779. 27:59smoke testing.
  780. 28:01And to doing this, we don't have any
  781. 28:03specific test cases or nothing. We are
  782. 28:05just verifying the build. So, which is
  783. 28:07called as a build verification testing.
  784. 28:10That is called smoke testing.
  785. 28:12Okay, understand this.
  786. 28:14Now, in initial days, the first whenever
  787. 28:17the software development testing process
  788. 28:19is started, in the first few cycles of
  789. 28:21testing,
  790. 28:22we will always get unstable builds.
  791. 28:25Because build will not be cannot be
  792. 28:27installed.
  793. 28:28Unstable builds. And suppose if you are
  794. 28:31not able to install the builds, you
  795. 28:32cannot continue with the rest of the
  796. 28:34testing.
  797. 28:35So, in few cycles, in few testing
  798. 28:38cycles, we will release the unstable
  799. 28:41builds. So, smoke testing will be
  800. 28:44conducted very frequently in every build
  801. 28:47whatever we are getting from the
  802. 28:48developer. In every build, whether the
  803. 28:51build whether the software or build or
  804. 28:54installer contains all the files are
  805. 28:55not. And whether it's properly
  806. 28:57installing or not. Basic navigations are
  807. 29:00working or not. URL is working or not.
  808. 29:02So, these things will be verified at the
  809. 29:04beginning level.
  810. 29:06And if these things are perfectly
  811. 29:07working, that means the build is stable.
  812. 29:10But, initial cycles, initial testing
  813. 29:12cycles, you will never get stable build.
  814. 29:16You will always get unstable build
  815. 29:17because
  816. 29:19just the developer is started
  817. 29:21development. So, you don't expect the
  818. 29:23build will be stable in the initial days
  819. 29:25itself. So, you will conduct the smoke
  820. 29:28testing.
  821. 29:29Okay, you will conduct the smoke
  822. 29:30testing.
  823. 29:31After few mini cycles, slowly build
  824. 29:34becomes a stable.
  825. 29:36Okay, in that time, as soon as the
  826. 29:38developer is providing the builds,
  827. 29:40the builds will be stable after few mini
  828. 29:43cycles.
  829. 29:44In that case, you will conduct the
  830. 29:46sanity testing.
  831. 29:48Okay, this is also basic functionality
  832. 29:50testing, but it is mainly focusing on
  833. 29:53the functionalities, very high-level
  834. 29:55functionalities.
  835. 29:57Not only the build installation
  836. 29:59navigations, it is also checking the
  837. 30:01main functionalities like login is
  838. 30:03working or not.
  839. 30:05Okay, products on the application is
  840. 30:06displaying or not.
  841. 30:08And links are properly working or not.
  842. 30:11Like login, logout is working or not.
  843. 30:13So, basic functionality testing we are
  844. 30:15going to conduct at the functional level
  845. 30:18or features level. That is called as a
  846. 30:20sanity testing.
  847. 30:21Okay, that is called as a sanity
  848. 30:23testing. So, smoke testing and a sanity
  849. 30:25testing both are comes under basic
  850. 30:28functional testing.
  851. 30:29We are going to test application at very
  852. 30:32high level.
  853. 30:33But what exactly difference means? Smoke
  854. 30:35testing will be conducted the initial
  855. 30:38days of
  856. 30:39testing life cycle. Because most of the
  857. 30:42times in the initial cycles, we will get
  858. 30:44the unstable builds. So, we have to
  859. 30:46verify the stability of the build,
  860. 30:49whether the build is stable
  861. 30:51or not. What is stability means? It
  862. 30:53should successfully installed and the
  863. 30:56basic navigation should perfectly work.
  864. 30:59That is called as a stability. So, once
  865. 31:01the stability is done, then we conduct
  866. 31:03sanity testing, regression, functional,
  867. 31:05and rest of the testings will be
  868. 31:06conducted.
  869. 31:08So, that is a smoke testing and a sanity
  870. 31:11testing. A smoke testing can be done by
  871. 31:13either tester or developers also. Can be
  872. 31:16done by testers or developers also.
  873. 31:19And uh before delivering this build to
  874. 31:21the tester, before giving the build to
  875. 31:23the tester, developer they also do some
  876. 31:25smoke testing in their environment,
  877. 31:27right? Because before providing the
  878. 31:29build to the tester, developer will
  879. 31:31install that application in their
  880. 31:33environment also, right? Don't blindly
  881. 31:35they will give the application to the
  882. 31:36tester. They will also install the our
  883. 31:38application or software in their
  884. 31:40environment, in the dev environment. And
  885. 31:42basic functionality is working or not,
  886. 31:44they will test it.
  887. 31:46And after that, they will release to the
  888. 31:47tester. So, there it is called as a
  889. 31:49smoke testing. So, developer can also do
  890. 31:51the smoke testing. And once you get the
  891. 31:54build, tester also can do the smoke
  892. 31:56testing. The build is properly installed
  893. 31:58or not, the
  894. 31:59basic functionality is working or not.
  895. 32:01But sanity testing is always conducted
  896. 32:04by the tester only. Because the
  897. 32:06developer will not test any features or
  898. 32:08functionality. Will test the only build.
  899. 32:11But sanity testing, what you will do? We
  900. 32:13are verifying the basic functionality is
  901. 32:14working fine or not.
  902. 32:16Once the build is stable, the basic
  903. 32:18functionality is working or not.
  904. 32:20So, sanity testing is always done by the
  905. 32:23testers.
  906. 32:24And smoke testing can be done by
  907. 32:26developers and also testers.
  908. 32:29Okay? And smoke testing will be
  909. 32:31conducted on unstable builds most of the
  910. 32:34times.
  911. 32:35And if the build is a stable, then we
  912. 32:37will concentrate on main functionality,
  913. 32:39very high level. That is called sanity
  914. 32:42testing.
  915. 32:43If smoke and a sanity testing is
  916. 32:45successful,
  917. 32:46then only we will accept the build from
  918. 32:48the developer. Remember, guys. Sometimes
  919. 32:51we can also reject the build.
  920. 32:53Developer is provided some build and
  921. 32:55smoke testing sanity testing is
  922. 32:57successful or passed, then we can accept
  923. 33:00the build and then we'll continue with
  924. 33:02the rest of the testings.
  925. 33:04But if the smoke testing is got or
  926. 33:05sanity testing was got failed,
  927. 33:08then we will reject the build and
  928. 33:10developer will create another build and
  929. 33:12provide that build to the tester. So,
  930. 33:14this is exact process will happen in the
  931. 33:16software testing process.
  932. 33:19Okay? So, whenever we receive the build
  933. 33:21from the developer, smoke testing should
  934. 33:23be done. And which will basically focus
  935. 33:26on the stability of the application or
  936. 33:28stability of the build.
  937. 33:30Basically, installation process will
  938. 33:31come into smoke. And once the build is
  939. 33:33stable, then we'll conduct the sanity
  940. 33:36testing. So, basic function working
  941. 33:37functionality testing is functional
  942. 33:39features are working or not, very high
  943. 33:41level, not in detail.
  944. 33:43So, once these testings are passed, then
  945. 33:45we'll accept the build and continue with
  946. 33:47the rest of the testings. So, that is
  947. 33:48called as smoke and sanity testing.
  948. 33:53Okay? So, first we'll conduct the smoke
  949. 33:55testing. Smoke is nothing but the first
  950. 33:58testing we have to conduct as soon as we
  951. 33:59get the build from the developer.
  952. 34:01Because until unless installation is
  953. 34:03successful, how we will conduct how will
  954. 34:05test the rest of the features?
  955. 34:07It is not at all possible, right? Your
  956. 34:09build, whatever the software you are
  957. 34:11receiving from the developer, first you
  958. 34:12have to install it. And then you can do
  959. 34:15some testings.
  960. 34:16So, that is smoke testing. Stable or
  961. 34:18not, install or not in your environment,
  962. 34:21that is most important thing. So, once
  963. 34:22the build is installed successfully,
  964. 34:24basic things are working and then
  965. 34:27we are focusing on the main features,
  966. 34:29sanity is working or not.
  967. 34:31Right? So, sanity is also sometimes part
  968. 34:33of the regression testing. So, once you
  969. 34:36developer fix some defect, we are going
  970. 34:38to verify the defect apart from this
  971. 34:40other impacted areas. So, we verify the
  972. 34:42sanity, we conduct the sanity testing on
  973. 34:44the other impacted areas.
  974. 34:47So, these two are the called basic
  975. 34:50functionality testing, smoke and sanity
  976. 34:53testings. And as when you have to
  977. 34:55conduct these two testings? Whenever you
  978. 34:57receive the build from the developer, in
  979. 34:59every cycle,
  980. 35:01you will get multiple builds, not only
  981. 35:03single build. Because developer will do
  982. 35:05a lot of changes, they will add a new
  983. 35:07functionality,
  984. 35:08delete the existing functionality, and
  985. 35:10do some changes on other builds, other
  986. 35:12functionalities.
  987. 35:13So, every time you will get the new
  988. 35:15build from the developer. So, whenever
  989. 35:16you get the new build from the
  990. 35:18developer, smoke testing will be
  991. 35:20conducted and then sanity testing will
  992. 35:22be conducted. And if there are any bug
  993. 35:24fixes, you should also conduct
  994. 35:26regression testing.
  995. 35:27So, this is all about smoke testing and
  996. 35:30sanity testing. Now, let us see the
  997. 35:33differences between smoke testing and
  998. 35:36sanity testing. Okay?
  999. 35:38So, let me just say what are the
  1000. 35:40examples of smoke testing
  1001. 35:42and a sanity testing. So, as I said
  1002. 35:45before, smoke test is done to make sure
  1003. 35:49the build we received from the
  1004. 35:50development team is testable or stable
  1005. 35:54or not.
  1006. 35:56Sanity test is done during the release
  1007. 35:58phase to check for the main
  1008. 36:00functionality of the application without
  1009. 36:02going deeper.
  1010. 36:03That means what? As soon as we get the
  1011. 36:05build from the developer, we verify the
  1012. 36:08build stable or not. Stable or not, how
  1013. 36:11we will know that? We have to install it
  1014. 36:13first of all. Installation should be
  1015. 36:15successful. Basic navigation should
  1016. 36:17work. Then we can say the build is
  1017. 36:19stable.
  1018. 36:20But when we have to conduct sanity
  1019. 36:21testing? Once the smoke is done and very
  1020. 36:24high level, the basic functionality we
  1021. 36:26are going to verify. That is sanity
  1022. 36:28testing.
  1023. 36:29And smoke testing is performed by both
  1024. 36:32the developers and testers, as I said
  1025. 36:34before.
  1026. 36:35Before releasing the software to the
  1027. 36:37testers, developer will cross-check
  1028. 36:39whether it is properly installable or
  1029. 36:41not.
  1030. 36:42So, that is smoke testing from the
  1031. 36:44developers.
  1032. 36:45And once the build is released to the
  1033. 36:47testers, testers will conduct the smoke
  1034. 36:50testing. So, testers will install the
  1035. 36:52build on their environment and test
  1036. 36:55whether we successfully installed and
  1037. 36:56properly or not.
  1038. 36:58That is smoke testing. So, smoke testing
  1039. 37:00can be done either both developers as
  1040. 37:02well as testers.
  1041. 37:04And sanity testing is only performed by
  1042. 37:06the testers alone because they know
  1043. 37:08exactly functionality of the
  1044. 37:09application.
  1045. 37:12Okay? And smoke testing, build maybe
  1046. 37:16either stable or unstable. Stable. So,
  1047. 37:18when I conduct the smoke test, why we
  1048. 37:19are conducting the smoke testing? To
  1049. 37:21check the build is a stable or unstable.
  1050. 37:25Right? We have to know. We will know
  1051. 37:27once you conduct the smoke testing, we
  1052. 37:29will know whether build is stable or
  1053. 37:30not.
  1054. 37:31If it is not stable,
  1055. 37:33then installation will definitely fail.
  1056. 37:35If an installation is successful, the
  1057. 37:36basic navigation will fail. Sometimes
  1058. 37:38URL will be pinged. So, once you open
  1059. 37:40the URL, home page will not be
  1060. 37:41displayed.
  1061. 37:43So, that means build is not stable.
  1062. 37:45So, in the smoke testing, build maybe
  1063. 37:47either stable or unstable. If it is
  1064. 37:49unstable, immediately we reject the
  1065. 37:51build. Then we will get another build
  1066. 37:52from the developer.
  1067. 37:54But in sanity testing, build is
  1068. 37:56relatively stable.
  1069. 37:58So, once the build is stable, then we
  1070. 37:59will verify the basic functionality of
  1071. 38:01the application.
  1072. 38:02Login is working or not, logout is
  1073. 38:04working or not,
  1074. 38:05or links are working or not. So, these
  1075. 38:08things we are going to verify once the
  1076. 38:09build is stable. That is on sanity
  1077. 38:11testing.
  1078. 38:12That is also mainly focusing on the
  1079. 38:14high-level features.
  1080. 38:16Now, smoke testing done on initial
  1081. 38:19builds, most of the times in the
  1082. 38:20starting, in the beginning of test life
  1083. 38:23cycles, we will most of the times we
  1084. 38:25will get unstable builds. Unstable
  1085. 38:28builds. So, there we will conduct smoke
  1086. 38:30testing.
  1087. 38:32And the sanity testing will be conducted
  1088. 38:33on stable builds. First, installation
  1089. 38:35should be successful and basic
  1090. 38:37navigation should work on the
  1091. 38:38application and then we will conduct
  1092. 38:40other testings. So, sanity testing will
  1093. 38:42be done on the stable builds.
  1094. 38:44And smoke testing is a part of basic
  1095. 38:47testing and sanity testing is a part of
  1096. 38:49regression testing.
  1097. 38:51And smoke testing usually done every
  1098. 38:53time there is a new build is released.
  1099. 38:57And the sanity testing is a planned when
  1100. 38:59there is no enough time to do in-depth
  1101. 39:01testing. Suppose,
  1102. 39:03tomorrow I have to release the
  1103. 39:05application and you don't have such time
  1104. 39:07to execute all the test cases. So, what
  1105. 39:09I will do is you will do basically
  1106. 39:11sanity testing. So, basic functionality
  1107. 39:13is working or not. And then release to
  1108. 39:15the next department.
  1109. 39:17Okay? So, whenever you don't have much
  1110. 39:19time and if you want to really test high
  1111. 39:22level of the application, then you can
  1112. 39:24also conduct sanity testing.
  1113. 39:26So, these are the differences between
  1114. 39:28smoke testing and sanity testing. Smoke
  1115. 39:32testing and sanity testing both are
  1116. 39:34basic functionality testing. But the
  1117. 39:37difference is in smoke testing is done
  1118. 39:39at the beginning of the test cycles to
  1119. 39:41check build is stable or not. In sanity
  1120. 39:44testing, we are verifying the basic
  1121. 39:46functionality is working or not after
  1122. 39:47build is stable.
  1123. 39:50As smoke testing will be done by the
  1124. 39:51testers as well as developers, but
  1125. 39:53sanity testing is always done by only
  1126. 39:55testers because functionality we are
  1127. 39:57verifying. Developer don't test the
  1128. 39:59functionality, okay? We are verifying
  1129. 40:01the functionality in the sanity testing.
  1130. 40:04Now, let me show the picture, then you
  1131. 40:05can understand.
  1132. 40:06So, when exactly we conduct smoke
  1133. 40:08testing? When exactly we conduct sanity
  1134. 40:10testing? So, for example,
  1135. 40:12we have an initial or unstable build.
  1136. 40:15The first time the developer is
  1137. 40:17releasing the build to the tester. What
  1138. 40:19he will do? We do smoke testing to check
  1139. 40:22the build is stable or not.
  1140. 40:25Or build is installable or not.
  1141. 40:27And if the smoke test is passed, then
  1142. 40:29what you will do? We will conduct with
  1143. 40:31the rest of the testing, system testing,
  1144. 40:33all the types of testing, regression
  1145. 40:35testing, rest of the testings we will
  1146. 40:36conduct here.
  1147. 40:38Suppose smoke testing is got failed.
  1148. 40:41Smoke test is passed, no? Then build
  1149. 40:43will be rejected.
  1150. 40:45Build will be rejected. We don't
  1151. 40:47continue any testing on that build.
  1152. 40:49Understand, okay? So, suppose after
  1153. 40:52getting some more cycles like build one,
  1154. 40:54build two, after getting few number of
  1155. 40:56builds in the testing life cycle, slowly
  1156. 40:58the build becomes stable.
  1157. 41:00Slowly the build becomes stable.
  1158. 41:02Installation will be successful every
  1159. 41:03time.
  1160. 41:04In that case, we will do sanity testing.
  1161. 41:08Means basic functionality with very high
  1162. 41:10level we are going to test.
  1163. 41:13And that is
  1164. 41:14sanity testing. And if it is passed,
  1165. 41:17then again we'll conduct the rest of the
  1166. 41:18system testing and regression testing.
  1167. 41:20Again, if it is failed, then again we
  1168. 41:22reject the build.
  1169. 41:23In both the cases, either smoke testing
  1170. 41:25and sanity testing is got failed, we
  1171. 41:27reject the build. We don't accept the
  1172. 41:30build. Again, developer will provide
  1173. 41:32another build and will continue with the
  1174. 41:34testing.
  1175. 41:35Okay. So, this is our
  1176. 41:37differences between smoke testing and
  1177. 41:40the sanity testing. So, the first
  1178. 41:41testing is smoke testing followed by the
  1179. 41:43sanity testing. Smoke testing focus on
  1180. 41:46the stability of the application.
  1181. 41:47Whereas sanity testing is focus on the
  1182. 41:50main features at very high level, basic
  1183. 41:52features of the application.
  1184. 41:55And smoke testing conducted at the
  1185. 41:57initial testing life cycle to check the
  1186. 41:59build is stable, whereas sanity testing
  1187. 42:02will be conducted after few cycles.
  1188. 42:05After build is stable. And very basic
  1189. 42:08functionality is working or not. So,
  1190. 42:09that is sanity testing.
  1191. 42:12So, are you guys clear on this? Smoke
  1192. 42:13testing and sanity testing.
  1193. 42:19All right. So, now
  1194. 42:21let us move on to the next type of
  1195. 42:23testing,
  1196. 42:24exploratory testing.
  1197. 42:27Exploratory testing. So, what is meant
  1198. 42:29by
  1199. 42:30exploratory testing?
  1200. 42:33So, exploratory testing.
  1201. 42:37So, sometimes what happens is in your
  1202. 42:40testing environment in your company,
  1203. 42:43so you don't have any requirement,
  1204. 42:46but your application is ready.
  1205. 42:48Okay? Your application is ready, but at
  1206. 42:51that time you don't have any
  1207. 42:52requirement. You don't know the
  1208. 42:53functionality actually. You don't have
  1209. 42:55any You don't know any You don't have
  1210. 42:57any FRS document. You don't have any
  1211. 42:58design document. No documentation is
  1212. 43:01available, but your application is
  1213. 43:03ready.
  1214. 43:04Okay?
  1215. 43:05And you have to
  1216. 43:07test the application by exploring the
  1217. 43:09functionality.
  1218. 43:11So, you have to test the application by
  1219. 43:13exploring the functionality. Suppose
  1220. 43:15you have joined in some new company. In
  1221. 43:18that company, software is already
  1222. 43:19developed
  1223. 43:21and documents documentation is still not
  1224. 43:23ready. And they have given that
  1225. 43:25application to you
  1226. 43:26and
  1227. 43:27try to understand the functionality.
  1228. 43:30So, they have given that application to
  1229. 43:31you and ask you to understand the
  1230. 43:34functionality and do some kind of
  1231. 43:36testing.
  1232. 43:37So, what you will do? Without having any
  1233. 43:40documents, without having any test cases
  1234. 43:43or without having any test scenarios,
  1235. 43:45you will explore the application and
  1236. 43:48understand it completely and test it.
  1237. 43:51That is exploratory testing. Explore.
  1238. 43:54Here explore means what? You don't know
  1239. 43:56anything before that. You don't have any
  1240. 43:58documentation. You don't have any
  1241. 44:00test cases, nothing. You will just
  1242. 44:03explore the functionality of the
  1243. 44:04application
  1244. 44:05based upon your previous experience.
  1245. 44:07So, you will open the URL. You will do
  1246. 44:10the login. You will click on some
  1247. 44:11register link. And you will click on
  1248. 44:13some shopping cart, select the product.
  1249. 44:15So, without knowing any functionality,
  1250. 44:18you just explore the application and uh
  1251. 44:21understand the application.
  1252. 44:23While exploring, understand the
  1253. 44:24application and test the functionality,
  1254. 44:26which is called as a exploratory
  1255. 44:28testing.
  1256. 44:29So, we have to explore the application,
  1257. 44:32understand it, and test it. That is
  1258. 44:34called as exploratory testing.
  1259. 44:36And understanding the application,
  1260. 44:38identify all the possible scenarios, and
  1261. 44:41document it, then use it for testing.
  1262. 44:44So, in exploratory testing, what you
  1263. 44:45will do is first you will have
  1264. 44:47application
  1265. 44:48and
  1266. 44:49explore each and every option, each and
  1267. 44:51every feature in your application,
  1268. 44:53and document it. Write a small document,
  1269. 44:55what are the scenarios you have
  1270. 44:57identified in your application, and
  1271. 44:58write the document, and use those
  1272. 45:01scenarios for testing. And test those
  1273. 45:03scenarios.
  1274. 45:04That is called as exploratory testing.
  1275. 45:06So, this is completely depends on the
  1276. 45:08tester
  1277. 45:10experience level. Suppose tester is
  1278. 45:12already worked on previous
  1279. 45:14domains or previous projects, he has
  1280. 45:16some kind of experience. And with that
  1281. 45:19experience, the new applications can
  1282. 45:21easily explore. Suppose you are worked
  1283. 45:23on some banking application.
  1284. 45:25And it is completed project. Then you
  1285. 45:26have joined in another company, there
  1286. 45:28also you got some banking application.
  1287. 45:31And without any documentation also you
  1288. 45:32can easily explore the application
  1289. 45:34because you have some previous knowledge
  1290. 45:35on the banking domain. You know exactly
  1291. 45:37how bank works, how functionalities will
  1292. 45:39be there.
  1293. 45:40And the same functionalities you can
  1294. 45:42expect in the new application, new
  1295. 45:43project also. So, explore the
  1296. 45:45functionality of the application without
  1297. 45:48having any document and exploring it,
  1298. 45:50finally you test those features or test
  1299. 45:52those scenarios. That is comes under
  1300. 45:55exploratory testing.
  1301. 45:57So, we do exploratory testing when the
  1302. 46:00application ready, but there is no
  1303. 46:02requirement.
  1304. 46:03So, test engineer here will do
  1305. 46:05exploratory testing when there is no
  1306. 46:07requirement.
  1307. 46:09Okay? Understand this is exploratory
  1308. 46:11testing. So, just we have to identify
  1309. 46:13the application, understand the
  1310. 46:14application by going through all the
  1311. 46:16flows, and test it without any
  1312. 46:18documentation. That is exploratory
  1313. 46:20testing.
  1314. 46:21But there are some drawbacks in the
  1315. 46:22exploratory testing.
  1316. 46:24And this is another important interview
  1317. 46:26question. So, what are the drawbacks in
  1318. 46:27exploratory testing? So, first question
  1319. 46:29is when you will do exploratory testing?
  1320. 46:32So, exploratory testing will be done
  1321. 46:35if the application is ready, but there
  1322. 46:37is no documentation. In that case, we
  1323. 46:39can conduct exploratory testing.
  1324. 46:41But what are the drawbacks in
  1325. 46:43exploratory testing?
  1326. 46:45There are few drawbacks are there, very
  1327. 46:46very important.
  1328. 46:48So, the first and most important
  1329. 46:50drawback is you might misunderstand any
  1330. 46:53feature as a bug
  1331. 46:54or any bug as a feature.
  1332. 46:57You can misunderstand any feature as a
  1333. 46:59bug or a bug as a feature.
  1334. 47:02So, for example,
  1335. 47:03let us say I have a small login screen.
  1336. 47:06So, let's try to understand with the
  1337. 47:08example, guys. What is a drawback in
  1338. 47:10exploratory testing?
  1339. 47:12So, you have an application in which
  1340. 47:14there is a login login login screen.
  1341. 47:18So, in the login screen, normally with
  1342. 47:20your previous experience, what you will
  1343. 47:21expect? The login screen most of the
  1344. 47:24times it contains a username and
  1345. 47:26password, that's username and password.
  1346. 47:29Along with this, let us say some ID.
  1347. 47:32There is one more field is available in
  1348. 47:33application.
  1349. 47:35Now,
  1350. 47:36based on your previous experience while
  1351. 47:38exploring the application,
  1352. 47:40username, password will be there, okay,
  1353. 47:42that is fine, but additionally you can
  1354. 47:44see some employee ID here.
  1355. 47:47Okay? So, you don't have any
  1356. 47:49documentation which talks about the
  1357. 47:51functionality. But what you will assume?
  1358. 47:54You may assume like this is a bug
  1359. 47:56because a login should not contains this
  1360. 47:58one, right? Only username, password,
  1361. 48:00okay, cancel button should be there. But
  1362. 48:02other than this field, if there if you
  1363. 48:04found some other field or some other
  1364. 48:07uh feature,
  1365. 48:08you may think that is a bug
  1366. 48:10because you don't have proper document.
  1367. 48:12You are just doing exploratory testing.
  1368. 48:14So, there are some chances you
  1369. 48:16misunderstand whether this feature is a
  1370. 48:18bug.
  1371. 48:20Okay? So, that is one problem. Suppose
  1372. 48:22sometimes there will be bug and you can
  1373. 48:24consider that also feature.
  1374. 48:27Okay, sometimes same EMP ID is provided
  1375. 48:30and this is a feature, part of the
  1376. 48:32feature, but you will think like it
  1377. 48:33should not be there in your username,
  1378. 48:35password. The login means only you
  1379. 48:36should expect only username, password.
  1380. 48:38It should not be there. You may consider
  1381. 48:40this as a bug
  1382. 48:42or you may consider as this feature
  1383. 48:44because you don't have a such document
  1384. 48:46which says this is a part of the feature
  1385. 48:48or this is not part of the feature. If
  1386. 48:50it is not part of the feature, you can
  1387. 48:52consider that is a bug.
  1388. 48:55Okay, if it is a part of the feature,
  1389. 48:57then you can consider as a functionality
  1390. 48:58or feature, that is not a bug.
  1391. 49:01So, you don't know exactly whether that
  1392. 49:04is a bug or feature. You cannot
  1393. 49:06discriminate it because you don't have
  1394. 49:08such document which says the
  1395. 49:10functionality of the application.
  1396. 49:12So, this is a major drawback in
  1397. 49:15exploratory testing, guys. Very very
  1398. 49:17important. So, in exploratory testing,
  1399. 49:20you might misunderstand any feature as a
  1400. 49:22bug or any bug as a feature. Sometimes
  1401. 49:26you may think a bug is a feature.
  1402. 49:28Sometimes you may think a feature is a
  1403. 49:30bug.
  1404. 49:31But we don't have such requirement
  1405. 49:33document. So, that is a one of the
  1406. 49:36important drawback in while performing
  1407. 49:38the exploratory testing.
  1408. 49:40And then, time-consuming.
  1409. 49:43Because you don't know the requirement,
  1410. 49:45you are just keep on exploring each and
  1411. 49:47every functionality. It takes a lot of
  1412. 49:49time.
  1413. 49:50If you have a documentation, directly
  1414. 49:52you will test the application. You will
  1415. 49:54verify all the scenarios based upon the
  1416. 49:56documentation.
  1417. 49:57Which will complete within less time
  1418. 49:59because you already have documentation.
  1419. 50:01But you don't have any documentation,
  1420. 50:03nothing. You're just going exploring the
  1421. 50:05application, it takes a lot of time.
  1422. 50:08Because you don't find any help there.
  1423. 50:10So, it is a time-consuming process.
  1424. 50:13And finally,
  1425. 50:15if there is any bug in the application,
  1426. 50:17you'll never know about it. There is any
  1427. 50:19bug in the application, you will never
  1428. 50:21know about it because
  1429. 50:23is there any documentation there? No. No
  1430. 50:26documentation says about feature or bug.
  1431. 50:29So, sometimes if you have a bug in your
  1432. 50:31application, you don't think that is a
  1433. 50:32bug.
  1434. 50:33Because you don't have any documentation
  1435. 50:35or anything.
  1436. 50:36So, you don't know exactly whether it is
  1437. 50:38a bug, really a bug or not.
  1438. 50:40So, that is another biggest problem. So,
  1439. 50:42there are some chances to miss some
  1440. 50:44number of bugs.
  1441. 50:46So, these are the main three
  1442. 50:47disadvantages or drawbacks of
  1443. 50:50exploratory testing.
  1444. 50:53Remember, very, very important. So, in
  1445. 50:55exploratory testing, we are exploring
  1446. 50:58the functionality of the application
  1447. 51:00without having documentation.
  1448. 51:03We We don't have any test cases, we
  1449. 51:04don't have any document, nothing. We are
  1450. 51:06just exploring the functionality of the
  1451. 51:07application ourselves without depending
  1452. 51:10on anything else.
  1453. 51:12And we are identifying all the scenarios
  1454. 51:14and document it and use those scenarios
  1455. 51:16for testing purpose. That is exploratory
  1456. 51:18testing. So, when you will conduct this?
  1457. 51:21If application is ready, but
  1458. 51:22documentation is late or by the time it
  1459. 51:25is not yet implemented. In those cases,
  1460. 51:27you will conduct exploratory testing.
  1461. 51:29So, the drawback in the exploratory
  1462. 51:31testing means you might misunderstand a
  1463. 51:33bug as a feature or a feature as a bug.
  1464. 51:35You don't know exactly which one is a
  1465. 51:37feature, which one is a bug.
  1466. 51:39Because of that reason, it is very
  1467. 51:40difficult to
  1468. 51:41uh check whether it is a bug or a
  1469. 51:44feature.
  1470. 51:45So, these are the drawbacks of
  1471. 51:47exploratory testing. Very, very
  1472. 51:49important testing.
  1473. 51:50And now, I'll explain about one more
  1474. 51:52testing called
  1475. 51:55ad hoc testing. So, exploratory testing,
  1476. 51:58ad hoc testing, monkey testing. So,
  1477. 52:01these three seems very similar type of
  1478. 52:03testings, okay? First, I'll tell you
  1479. 52:06exactly uh what kind of testings they
  1480. 52:09are and finally, we'll compare all three
  1481. 52:11testings. Then, we can understand the
  1482. 52:12differences, okay? So, now we have
  1483. 52:14discussed about exploratory testing.
  1484. 52:16What What is exploratory testing? When
  1485. 52:19you have to perform? What are the
  1486. 52:20drawbacks? Now, let us talk about ad hoc
  1487. 52:23testing.
  1488. 52:25So, what is ad hoc testing and when you
  1489. 52:27have to perform?
  1490. 52:29So, during ad hoc testing,
  1491. 52:31here also, we don't have any
  1492. 52:33documentation. We don't have any test
  1493. 52:36cases, we don't have any requirement,
  1494. 52:38nothing. We don't have anything in our
  1495. 52:40hand.
  1496. 52:41You have just have an application.
  1497. 52:43So, but you don't know
  1498. 52:46any functionality on this. So, testing
  1499. 52:48the application randomly without any
  1500. 52:50test cases or any business requirement.
  1501. 52:54Here also, we are testing the
  1502. 52:55application randomly without any test
  1503. 52:58cases or without any business
  1504. 52:59requirement document.
  1505. 53:01Means what? Suppose I have given
  1506. 53:03application to you
  1507. 53:05and you have some previous experience on
  1508. 53:07some other projects, same kind of
  1509. 53:09domains.
  1510. 53:10And immediately, what you do? You can do
  1511. 53:12some kind of testing. Ad hoc testing you
  1512. 53:14can conduct. Ad hoc is nothing but a
  1513. 53:15random.
  1514. 53:17Randomly test the functionalities
  1515. 53:20with knowing the functionality. Means
  1516. 53:22what? Based upon your previous
  1517. 53:24experience,
  1518. 53:26you can assume the functionality.
  1519. 53:28Okay, so login should be there. You know
  1520. 53:30how it should work. Logout link is
  1521. 53:32there. You know how it should work.
  1522. 53:35Okay, and inbox, Gmail inbox is there.
  1523. 53:38You know how it should work. So, to test
  1524. 53:40these things, you don't need any
  1525. 53:42documentation. So, randomly you can test
  1526. 53:44the features.
  1527. 53:46Which is called as ad hoc testing.
  1528. 53:48So, testing application randomly without
  1529. 53:51any test cases or any business
  1530. 53:53requirement is called ad hoc testing.
  1531. 53:56And which is an informal testing type
  1532. 53:59with the aim to break the system. So,
  1533. 54:01informal testing means what? We don't
  1534. 54:03have any proper plan.
  1535. 54:05We don't have any
  1536. 54:07uh such a cycle where you have to
  1537. 54:08conduct ad hoc testing. So, we don't
  1538. 54:10have like like in case of sanity and
  1539. 54:12smoke testing, like whenever we get the
  1540. 54:14build, immediately we have to conduct
  1541. 54:16those testings. But in ad hoc testing,
  1542. 54:18we don't have such type of rule. We can
  1543. 54:21conduct ad hoc testing at any time.
  1544. 54:23So, because we have to test the
  1545. 54:25application,
  1546. 54:26basic uh we have to test the
  1547. 54:28application. It is not a basic
  1548. 54:29functionality testing, we have to test
  1549. 54:30each and everything randomly.
  1550. 54:33Okay? So, it is a informal. Informal
  1551. 54:36means we can conduct at any time
  1552. 54:38whenever it is needed.
  1553. 54:39And the main intention of doing ad hoc
  1554. 54:41testing is to break the application.
  1555. 54:44So, why we have to break the
  1556. 54:45application? Because
  1557. 54:46this is a fundamental job of a tester.
  1558. 54:49Tester is always
  1559. 54:51try to break the application, try to
  1560. 54:53find the defects at the corner levels.
  1561. 54:56That's the main intention of doing
  1562. 54:57testing.
  1563. 54:58So, we always think about the negative
  1564. 55:00way, guys. If you see the application,
  1565. 55:01some fields, you always think you need
  1566. 55:04to have some kind of analytical skills.
  1567. 55:06So, suppose if I provide some data, it
  1568. 55:08is working fine. And if I provide
  1569. 55:10something else, it should not work.
  1570. 55:12Right? Suppose if I take small username
  1571. 55:14field,
  1572. 55:15try to enter some characters, try to
  1573. 55:17enter some numbers, try to enter some
  1574. 55:18special characters, try to enter some
  1575. 55:20space and let's see what is happening.
  1576. 55:23So, this kind of skill set that tester
  1577. 55:25should always have it. So, our intention
  1578. 55:27is always break the system or break the
  1579. 55:31uh breaking in the sense some
  1580. 55:33functionality should should not work. In
  1581. 55:35that way, we have to
  1582. 55:36cover the testing. So, it is a informal
  1583. 55:38testing. So, there is should not be any
  1584. 55:40plan for that. Whenever you need, you
  1585. 55:42can conduct ad hoc testing. So, randomly
  1586. 55:44test the application.
  1587. 55:47And whatever feature you find an
  1588. 55:49application, you can test it. That is
  1589. 55:51called as random testing.
  1590. 55:54And here, you know
  1591. 55:56some knowledge of application. Based
  1592. 55:58upon your previous experience, you know
  1593. 55:59some functionality here.
  1594. 56:01You know how login works. You know how
  1595. 56:03logout You know how can save the
  1596. 56:05product. You know how to add the product
  1597. 56:07to the cart. You know already something.
  1598. 56:09So, based on that, you can perform this
  1599. 56:11testing, ad hoc testing.
  1600. 56:13And seems very similar, exploratory, ad
  1601. 56:16hoc, and next time I'm going to discuss
  1602. 56:18monkey testing also, but there is
  1603. 56:19difference. I'll consolidate all three
  1604. 56:21and I'll explain the differences also.
  1605. 56:23Okay, first let us understand individual
  1606. 56:26test case. Like we have understood what
  1607. 56:28is exploratory testing. Now, we
  1608. 56:30understanding ad hoc testing and then
  1609. 56:32we'll understand the monkey testing.
  1610. 56:33After that, we will compare it, okay?
  1611. 56:36So, ad hoc testing is nothing but
  1612. 56:37testing the application randomly
  1613. 56:41and without any test cases or documents.
  1614. 56:45But we know some functionality. Even
  1615. 56:46though we don't have a document, based
  1616. 56:47on our previous experience, we can
  1617. 56:49assume the functionality.
  1618. 56:51Okay? And tester should have knowledge
  1619. 56:54of application even though he doesn't
  1620. 56:57have requirement or test cases. How he
  1621. 56:59will have the knowledge? Depends on your
  1622. 57:01previous experience.
  1623. 57:03Okay? And this testing is usually is
  1624. 57:05unplanned. We don't have any planning
  1625. 57:07for this testing. Whenever it is needed,
  1626. 57:09we can conduct this testing. Ad hoc
  1627. 57:11testing means randomly test the
  1628. 57:13functionality.
  1629. 57:15But here, we know the functionality, we
  1630. 57:17can assume the functionality of the
  1631. 57:18application. This is ad hoc testing.
  1632. 57:21And you can also conduct this testing
  1633. 57:24to find the corner scenarios. Sometimes,
  1634. 57:27uh your functional test cases or
  1635. 57:29whatever test case you have written,
  1636. 57:30they may
  1637. 57:31catch the corner scenarios. Corner
  1638. 57:34scenarios Corner scenarios in the sense
  1639. 57:35what? While using the application,
  1640. 57:37somewhere
  1641. 57:39which is not identifiable.
  1642. 57:41In those cases, in the corner scenarios,
  1643. 57:43we have to conduct some kind of testing.
  1644. 57:46That is ad hoc testing. Random testing.
  1645. 57:48While doing random testing also, you may
  1646. 57:49find some number of defects.
  1647. 57:52Okay? So, this is ad hoc testing. Now,
  1648. 57:54come to the another type of testing
  1649. 57:56called monkey testing and gorilla
  1650. 57:58testing.
  1651. 57:59So, monkey testing and gorilla testing.
  1652. 58:01And here,
  1653. 58:03also, we test the application randomly
  1654. 58:06but without knowing any functionality.
  1655. 58:09Here also, we don't have any
  1656. 58:10documentation, no test cases, nothing.
  1657. 58:13But here also, we are testing the
  1658. 58:15application randomly, but without
  1659. 58:17knowledge of application.
  1660. 58:20We don't know anything about
  1661. 58:21application. Testers do not have
  1662. 58:23knowledge of application.
  1663. 58:26But in ad hoc testing,
  1664. 58:28we have to know about application. Based
  1665. 58:30on your previous experience, you can
  1666. 58:31assume the functionality and you can
  1667. 58:33test it. So, you have to know about
  1668. 58:35application even though you don't have a
  1669. 58:36documentation. But here, you don't have
  1670. 58:39a documentation and also, you don't know
  1671. 58:41about application.
  1672. 58:43But still, you can conduct some testing.
  1673. 58:46Which is called as monkey testing.
  1674. 58:48Example,
  1675. 58:49gaming application. Suppose, in your
  1676. 58:51mobile or tab, you found some games,
  1677. 58:54right? And normally, the children will
  1678. 58:56play games, right? So, they don't know
  1679. 58:58exactly initial days, they don't exactly
  1680. 59:00how to play with the games. So, as soon
  1681. 59:02as you open the game, they will do some
  1682. 59:04kind of clicking and some They do lot of
  1683. 59:06things randomly, but they don't exactly
  1684. 59:08how to work with that.
  1685. 59:10In those cases, application should not
  1686. 59:13break.
  1687. 59:14That is called monkey testing. So, here
  1688. 59:16and there, we will jump and then do some
  1689. 59:19kind of testing. Without knowing
  1690. 59:21functionality of the application. You
  1691. 59:22don't know how to work with that. You
  1692. 59:23don't know how it is working with that.
  1693. 59:25But still, you can just randomly click
  1694. 59:27on something and see what is happening.
  1695. 59:30So, that is a kind of testing we do,
  1696. 59:32which is called as monkey testing or
  1697. 59:34gorilla testing.
  1698. 59:36Why we are calling monkey testing means
  1699. 59:37it is not a stable. Sometime we click on
  1700. 59:39that button, click on this button,
  1701. 59:41select the radio button, and without
  1702. 59:43entering any data, just directly click
  1703. 59:45on okay button or submit button, then
  1704. 59:47we'll see what is exactly happen.
  1705. 59:49Especially gaming applications, people
  1706. 59:51will do this kind of testing.
  1707. 59:53Monkey testing. And here also, we do
  1708. 59:56testing randomly without any
  1709. 59:58documentation or requirement,
  1710. 1:00:00which is also informal.
  1711. 1:00:02And uh the thing is here tester also
  1712. 1:00:05don't know the knowledge of
  1713. 1:00:06applications. So, suitable for gaming
  1714. 1:00:09applications.
  1715. 1:00:10So, now if I see
  1716. 1:00:12ad hoc testing, exploratory testing, ad
  1717. 1:00:14hoc testing, monkey testing,
  1718. 1:00:16three seems very similar.
  1719. 1:00:18But now let us understand the
  1720. 1:00:20differences between these three.
  1721. 1:00:22So, first start with ad hoc testing. In
  1722. 1:00:24ad hoc testing,
  1723. 1:00:26no documentation. Even monkey testing is
  1724. 1:00:28also no documentation. Exploratory
  1725. 1:00:31testing is also no document. No
  1726. 1:00:33documentation in the sense what? We
  1727. 1:00:35don't have a test cases. We don't know
  1728. 1:00:37the scenarios. We don't have any FRS
  1729. 1:00:39document. Nothing is available.
  1730. 1:00:42But in both three cases, application is
  1731. 1:00:44available. Our software is available.
  1732. 1:00:46But there is no documentation.
  1733. 1:00:49So, in ad hoc testing, monkey testing,
  1734. 1:00:51and exploratory testing, in three types
  1735. 1:00:53of testings, there is no documentation.
  1736. 1:00:56Next point.
  1737. 1:00:58And these three testings, to conduct
  1738. 1:01:00these three testings, there is no plan.
  1739. 1:01:03We can conduct it anytime.
  1740. 1:01:05Okay, there is no proper schedule. But
  1741. 1:01:08rest of the testing like regression
  1742. 1:01:09testing, functional testing, we have a
  1743. 1:01:10proper schedule. And from so and so day
  1744. 1:01:13to so and so day, we have to conduct
  1745. 1:01:15this type of testing. There is a plan.
  1746. 1:01:17But to conduct these testings, there
  1747. 1:01:19will not be any plan. We can conduct it
  1748. 1:01:21anytime. Ad hoc testing, monkey testing,
  1749. 1:01:24and exploratory testing.
  1750. 1:01:26Next. All three are informal testings
  1751. 1:01:29because there is no plan. If it is a
  1752. 1:01:31plan and schedule, that is a purely
  1753. 1:01:33formal testing. But due to there is no
  1754. 1:01:35plan at all, so we can just say informal
  1755. 1:01:38testing process, informal testings. Now,
  1756. 1:01:41let's see the differences.
  1757. 1:01:44In ad hoc testing, tester should know
  1758. 1:01:46the application functionality.
  1759. 1:01:49So, tester should know the application
  1760. 1:01:51functionality. He has some kind of
  1761. 1:01:53experience on the same kind of projects
  1762. 1:01:55earlier.
  1763. 1:01:56Then he can assume the functionality of
  1764. 1:01:58the application, he can do some testing.
  1765. 1:02:00Randomly test the functionality by
  1766. 1:02:03knowing the functionality. That is ad
  1767. 1:02:05hoc testing.
  1768. 1:02:07Randomly test the application
  1769. 1:02:10without knowing the functionality is
  1770. 1:02:12called monkey testing.
  1771. 1:02:14So, tester doesn't know the application
  1772. 1:02:16functionality. But in ad hoc testing,
  1773. 1:02:17tester should know the application
  1774. 1:02:19functionalities. In monkey testing,
  1775. 1:02:21tester doesn't know the application
  1776. 1:02:22functionalities. But when you come to
  1777. 1:02:24the exploratory testing, here also
  1778. 1:02:26tester doesn't know the application
  1779. 1:02:27functionality. But here we are exploring
  1780. 1:02:29the functionality. We are
  1781. 1:02:31exploring the application,
  1782. 1:02:33then we come to know the functionality.
  1783. 1:02:35So, in monkey testing and exploratory
  1784. 1:02:37testing also, we don't know the
  1785. 1:02:39application functionality or features.
  1786. 1:02:41We are just
  1787. 1:02:42testing randomly.
  1788. 1:02:44But in ad hoc testing, we know some
  1789. 1:02:46functionality based upon upon your
  1790. 1:02:48previous experience.
  1791. 1:02:50Now, all three are random testing. So,
  1792. 1:02:53why you say random means there should
  1793. 1:02:54not be any order we need to follow. We
  1794. 1:02:56don't need to follow any order.
  1795. 1:02:58So, random testing. Randomly can choose
  1796. 1:03:00any other functionalities and you can
  1797. 1:03:02test it in all three kinds of testing.
  1798. 1:03:05So, random testing.
  1799. 1:03:07Now,
  1800. 1:03:08the intention is to break the
  1801. 1:03:10application or find out the corner
  1802. 1:03:12defects. Why we do ad hoc testing?
  1803. 1:03:14Intention is to break the application.
  1804. 1:03:16We will check somewhere our application
  1805. 1:03:18is breaking or not.
  1806. 1:03:20And somewhere some corner scenarios are
  1807. 1:03:22working properly or not.
  1808. 1:03:24That is the main intention of ad hoc
  1809. 1:03:25testing.
  1810. 1:03:26And the main intention of the monkey
  1811. 1:03:28testing is also break the application
  1812. 1:03:31and finding the corner defects.
  1813. 1:03:33And the main intention of exploratory
  1814. 1:03:35testing is to learn and explore the
  1815. 1:03:38functionality of the application.
  1816. 1:03:40In exploratory testing, the mainly our
  1817. 1:03:42focusing on learning the application
  1818. 1:03:44because we don't know the application.
  1819. 1:03:45We don't have any documentation. So, we
  1820. 1:03:47are going to learn the application. Even
  1821. 1:03:49we don't have a prior knowledge of that
  1822. 1:03:51application. So, the main intention of
  1823. 1:03:53doing in exploratory testing is
  1824. 1:03:56to explore the functionality of the
  1825. 1:03:57application and then test it.
  1826. 1:04:00Okay. And ad hoc testing can be done on
  1827. 1:04:03any kind of applications. And monkey
  1828. 1:04:05testing especially preferred for gaming
  1829. 1:04:08applications because children most of
  1830. 1:04:09the time children will play with the
  1831. 1:04:11games. So, they don't exactly how we
  1832. 1:04:13need to operate those games.
  1833. 1:04:14So, gaming applications.
  1834. 1:04:17And exploratory testing also can be done
  1835. 1:04:19on any application which is new to the
  1836. 1:04:21testers.
  1837. 1:04:22Okay. Because I'm a tester, I have an
  1838. 1:04:24application, I don't know about that. I
  1839. 1:04:26don't know about any functionality of
  1840. 1:04:27the application, then exploratory
  1841. 1:04:29testing will be done. Explore the
  1842. 1:04:31functionalities, identify all the
  1843. 1:04:33scenarios,
  1844. 1:04:34and use those scenarios for testing.
  1845. 1:04:36So, these are the similarities and
  1846. 1:04:39differences between ad hoc testing,
  1847. 1:04:41monkey testing, and exploratory testing.
  1848. 1:04:44Guys, you have understood now. Please
  1849. 1:04:45confirm in the chat window, everyone.
  1850. 1:04:50Now, let us move on to the next type of
  1851. 1:04:53testing called positive testing and a
  1852. 1:04:56negative testing. So, these again seems
  1853. 1:04:58very similar.
  1854. 1:04:59Positive testing and a negative testing.
  1855. 1:05:02Now, let us see about positive testing
  1856. 1:05:04or negative testing. Now, let us see
  1857. 1:05:07what is positive testing, what is
  1858. 1:05:09negative testing.
  1859. 1:05:10So, before that, let me write here.
  1860. 1:05:13Exploratory testing we have discussed.
  1861. 1:05:18Ad hoc testing.
  1862. 1:05:21And then
  1863. 1:05:22monkey testing. Okay, these three
  1864. 1:05:25testing, regression testing are similar.
  1865. 1:05:27Seems very similar but not similar,
  1866. 1:05:29okay? So, that's the reason we compared
  1867. 1:05:31them.
  1868. 1:05:32And these three seems very similar but
  1869. 1:05:34they are not similar. So, we have
  1870. 1:05:35compared them.
  1871. 1:05:37And now I'm talking about positive
  1872. 1:05:40testing
  1873. 1:05:41and then negative testing.
  1874. 1:05:45So, now we'll understand what is
  1875. 1:05:47positive testing, what is a negative
  1876. 1:05:49testing.
  1877. 1:05:52Positive testing and negative testing.
  1878. 1:05:54So, testing the application with valid
  1879. 1:05:56inputs is called as a positive testing.
  1880. 1:05:58Simple. So, testing the application with
  1881. 1:06:01the positive inputs and working or not.
  1882. 1:06:04That is positive testing. And testing
  1883. 1:06:07the application with the negative inputs
  1884. 1:06:09and it should not work.
  1885. 1:06:11That is negative testing. So, for
  1886. 1:06:12example,
  1887. 1:06:13let us take a small text box and my
  1888. 1:06:15requirement is the text box allows only
  1889. 1:06:19numbers.
  1890. 1:06:20The text box allowed only numbers.
  1891. 1:06:23So, if I provide only numbers into the
  1892. 1:06:25text box, it should allow. That is a
  1893. 1:06:27positive testing.
  1894. 1:06:29That is a positive testing.
  1895. 1:06:30So, from zero to 99999, you can enter
  1896. 1:06:33any number in this text box. So, it
  1897. 1:06:36should accept. This is positive testing
  1898. 1:06:38because we provided the positive input
  1899. 1:06:40to the
  1900. 1:06:41application.
  1901. 1:06:43So, testing the application with the
  1902. 1:06:44valid inputs is called as a positive
  1903. 1:06:47testings.
  1904. 1:06:48It checks whether an application behaves
  1905. 1:06:51as expected with positive inputs.
  1906. 1:06:54And this is an example.
  1907. 1:06:56Now, negative testing. Testing the
  1908. 1:06:58application with invalid inputs is
  1909. 1:07:00called negative testing.
  1910. 1:07:02For example, in this box, it is
  1911. 1:07:04accepting only numbers. But what you
  1912. 1:07:06have done here? We are trying to test
  1913. 1:07:09whether it is accepting characters or
  1914. 1:07:11not. When I pass numbers, it should
  1915. 1:07:13accept. That is positive testing. Now,
  1916. 1:07:16when I pass a characters or spaces or
  1917. 1:07:18special symbols, then it should not
  1918. 1:07:20accept. That is our negative negative
  1919. 1:07:23testing.
  1920. 1:07:24So, always we have to think positive as
  1921. 1:07:27well as negative way, guys. As a tester.
  1922. 1:07:29Okay. So, because
  1923. 1:07:31as a end user, as a user, I can provide
  1924. 1:07:33anything into the text box.
  1925. 1:07:35But is it tester's responsibility
  1926. 1:07:38test that application in all kinds of
  1927. 1:07:40scenarios. You should not miss even a
  1928. 1:07:42small scenario.
  1929. 1:07:44Okay. In all the conditions, with all
  1930. 1:07:46the different type of data, you have to
  1931. 1:07:47test in all the cases. Whether you
  1932. 1:07:49provide the positive input, it should
  1933. 1:07:51work as per your expectation.
  1934. 1:07:54When I pass invalid input, it should not
  1935. 1:07:56work.
  1936. 1:07:58Okay, it should differently work.
  1937. 1:07:59Suppose when I say valid username, valid
  1938. 1:08:02password, it should successfully log in.
  1939. 1:08:04That is a positive testing.
  1940. 1:08:06When I pass invalid username and invalid
  1941. 1:08:09password,
  1942. 1:08:11the application should not log in. That
  1943. 1:08:13is a negative testing. So, test the
  1944. 1:08:15application with the positive data is
  1945. 1:08:17called positive testing. Test the
  1946. 1:08:19application with the negative data,
  1947. 1:08:21which is called as a negative testing.
  1948. 1:08:23So, when you're writing your test cases,
  1949. 1:08:25we have to make sure you should cover
  1950. 1:08:28positive test cases as well as negative
  1951. 1:08:30test cases.
  1952. 1:08:31Okay. So, this is a positive and
  1953. 1:08:33negative simple test case.
  1954. 1:08:35Okay, let us say this is an example.
  1955. 1:08:37I've given one enter only numbers. But
  1956. 1:08:39what I have entered here? Alphabets. So,
  1957. 1:08:42how we can perform the negative testing?
  1958. 1:08:43We can enter small characters from A to
  1959. 1:08:45Z, upper case characters from A to Z,
  1960. 1:08:47special symbols, spaces.
  1961. 1:08:49These are all negative data.
  1962. 1:08:51Negative test data. So, whenever you
  1963. 1:08:53provide this kind of data, your text box
  1964. 1:08:56should not allow it. It should give some
  1965. 1:08:58message or error, invalid input or
  1966. 1:09:00something like that. So, that is
  1967. 1:09:02negative testing.
  1968. 1:09:03That is negative testing. So, testing
  1969. 1:09:06the application with the positive or
  1970. 1:09:09valid data, which is called as positive
  1971. 1:09:11testing. Testing the application with
  1972. 1:09:13negative data or invalid input, that is
  1973. 1:09:15called as negative testing. Very simple.
  1974. 1:09:19Now,
  1975. 1:09:20this is this is the example I have
  1976. 1:09:21given, positive versus negative test
  1977. 1:09:23cases. For example, let us say I I a
  1978. 1:09:25small requirement here.
  1979. 1:09:27A text box is listed as a feature
  1980. 1:09:30in FRS. It is mentioned as a text box
  1981. 1:09:32accepts
  1982. 1:09:336 to 20 characters and only alphabets.
  1983. 1:09:38Read the requirement once again.
  1984. 1:09:406 to 20 characters.
  1985. 1:09:42The number of characters should be 6 to
  1986. 1:09:4420. Minimum 6, maximum 20.
  1987. 1:09:47And those characters are only alphabets.
  1988. 1:09:49Alphabets means what? A to Z. Either
  1989. 1:09:52upper case characters or lower case
  1990. 1:09:54characters. So, that's the requirement.
  1991. 1:09:57Now, when I see the positive test cases,
  1992. 1:09:59what are all positive test cases will
  1993. 1:10:00come here?
  1994. 1:10:02Text box accepts six characters.
  1995. 1:10:04Yes or no? Yes.
  1996. 1:10:06Text box accept up to 20 characters.
  1997. 1:10:09Yes, this is also positive test case
  1998. 1:10:11because 6 to 20 we said.
  1999. 1:10:13Text box accepts any value in between 6
  2000. 1:10:16to 20 characters. Yes. 6 to 20 means
  2001. 1:10:19what? I can enter 10 characters, 15
  2002. 1:10:21characters
  2003. 1:10:22or 18 characters, anything, right?
  2004. 1:10:24Between these two numbers I can enter
  2005. 1:10:25any number of characters.
  2006. 1:10:27And text box accepts all alphabets. So,
  2007. 1:10:30these are all positive test cases.
  2008. 1:10:32Verify the text box with all kinds of
  2009. 1:10:34inputs. But, what are the negative test
  2010. 1:10:36cases?
  2011. 1:10:37Text box should not accept less than six
  2012. 1:10:40characters. Means, try to enter less
  2013. 1:10:42than six characters like five, four,
  2014. 1:10:44three, then it should not accept. That's
  2015. 1:10:46our expectation.
  2016. 1:10:48Text box should not accept characters
  2017. 1:10:50more than 20 characters also. Try to
  2018. 1:10:52enter 21, 25, something like this it
  2019. 1:10:55should not accept.
  2020. 1:10:56Text box should not accept special
  2021. 1:10:58characters like like question marks,
  2022. 1:11:01percentage symbol,
  2023. 1:11:02stars should not accept. Text box should
  2024. 1:11:05not accept numbers or numericals like 1
  2025. 1:11:082 3 4, number should not accept. So,
  2026. 1:11:10these are all negative test cases.
  2027. 1:11:12So, this is a simple example. Positive
  2028. 1:11:14test cases and a negative test cases.
  2029. 1:11:16Test the application with the positive
  2030. 1:11:18input is called positive testing.
  2031. 1:11:20Testing the application with the
  2032. 1:11:21negative inputs or invalid inputs are
  2033. 1:11:23called negative testing.
  2034. 1:11:26And then
  2035. 1:11:28end-to-end testing.
  2036. 1:11:30So, what is end-to-end testing?
  2037. 1:11:32Sometimes
  2038. 1:11:34uh your lead will ask you so perform
  2039. 1:11:36end-to-end testing.
  2040. 1:11:37So, you need to understand what is
  2041. 1:11:38end-to-end testing.
  2042. 1:11:40So, end-to-end testing means
  2043. 1:11:42testing the overall functionality of the
  2044. 1:11:44application.
  2045. 1:11:45That functionality covers each and every
  2046. 1:11:48flow in your application.
  2047. 1:11:50So, let's say I have some application
  2048. 1:11:52and uh let's say Gmail application. In
  2049. 1:11:54the Gmail application, you have a login
  2050. 1:11:57and you have a compose
  2051. 1:11:59and you have sent a sent email and
  2052. 1:12:02deleted email. So, different components
  2053. 1:12:04are there.
  2054. 1:12:05And I want to test end-to-end
  2055. 1:12:07functionality.
  2056. 1:12:08Then what I can do? First, I will login
  2057. 1:12:11to the application.
  2058. 1:12:12And after successful login, I'll compose
  2059. 1:12:14a email.
  2060. 1:12:15Then I can test that email comes into
  2061. 1:12:18compose box or not. Then again delete it
  2062. 1:12:20from there. Then come to I'll check it
  2063. 1:12:23will come to send it will come to
  2064. 1:12:25deleted emails or not. That's it. This
  2065. 1:12:27is end-to-end testing. So, which will
  2066. 1:12:29cover all the components in sequentially
  2067. 1:12:31which is covered all the components. So,
  2068. 1:12:33in
  2069. 1:12:34login box is covered, inbox is covered,
  2070. 1:12:37sent email is covered, deleted emails
  2071. 1:12:39also covered. This is called as
  2072. 1:12:40end-to-end testing.
  2073. 1:12:42Another example here.
  2074. 1:12:44So, let's say I have a simple banking
  2075. 1:12:45application. So, I want to cover and I
  2076. 1:12:48want to do end-to-end testing. Means, I
  2077. 1:12:49want to touch each and every
  2078. 1:12:51functionality in one flow.
  2079. 1:12:53So, I say first login
  2080. 1:12:55and add customer.
  2081. 1:12:57And these are the different components
  2082. 1:12:58also we can test individually. But, what
  2083. 1:13:00is end-to-end testing means which should
  2084. 1:13:02cover every flow in your application.
  2085. 1:13:04That means I say login to application.
  2086. 1:13:07Then I'll try to add a new customer.
  2087. 1:13:09Then I'll try to delete the customer or
  2088. 1:13:11edit the customer. Then I log out from
  2089. 1:13:13application. So, this will cover
  2090. 1:13:15how many? 1 2 3 4 5 scenarios
  2091. 1:13:18into one test. So, this is called
  2092. 1:13:20end-to-end test from login to logout.
  2093. 1:13:23What are all there in between
  2094. 1:13:24functionalities? We are covering each
  2095. 1:13:26and every functionality sequentially
  2096. 1:13:28which is called as end-to-end testing.
  2097. 1:13:30So, whenever anyone ask you to perform
  2098. 1:13:33end-to-end testing means you have to
  2099. 1:13:34make sure each and every functionality
  2100. 1:13:36or major functionalities will be covered
  2101. 1:13:38as part of the test case.
  2102. 1:13:41That is called end-to-end testing. So,
  2103. 1:13:43testing the overall functionalities of
  2104. 1:13:45the system or application which includes
  2105. 1:13:47the data integration among the modules
  2106. 1:13:50is called end-to-end testing. So, after
  2107. 1:13:52successful login I can do add customer.
  2108. 1:13:54After adding the customer, I can delete
  2109. 1:13:56the customer or I can edit the customer.
  2110. 1:13:58Dependent functionalities are there.
  2111. 1:14:00And then I can log out from the
  2112. 1:14:01application.
  2113. 1:14:02So, this is called end-to-end testing.
  2114. 1:14:04So, end-to-end testing means what?
  2115. 1:14:06Testing the overall functionality which
  2116. 1:14:08includes each and every component in
  2117. 1:14:10your application.
  2118. 1:14:12So, that is all about end-to-end
  2119. 1:14:13testing.
  2120. 1:14:15Fine? So, now globalization and
  2121. 1:14:19localization testing. Globalization and
  2122. 1:14:22localization testing.
  2123. 1:14:24And sometimes if you see some
  2124. 1:14:26application will support globally.
  2125. 1:14:29Means all different languages. And some
  2126. 1:14:32application will support specific
  2127. 1:14:33language, local applications.
  2128. 1:14:36So, example
  2129. 1:14:38uh suppose let us say
  2130. 1:14:40PayPal. So, PayPal is an application
  2131. 1:14:43which is online payment system.
  2132. 1:14:45Which is there in almost every country
  2133. 1:14:47throughout the world.
  2134. 1:14:49Right? So, it support globally. So, all
  2135. 1:14:52different cultures, all different
  2136. 1:14:54countries, all different languages.
  2137. 1:14:56So, some applications
  2138. 1:14:59support
  2139. 1:15:00uh globalization concept and support
  2140. 1:15:02localization. So, globalization is what?
  2141. 1:15:05Whether our application is supporting
  2142. 1:15:07globally or not.
  2143. 1:15:09All the languages or not.
  2144. 1:15:12That is globalization testing.
  2145. 1:15:14Localization testing means what? Our
  2146. 1:15:15application is supporting the local
  2147. 1:15:17languages or not.
  2148. 1:15:19That is localization testing. For
  2149. 1:15:20example,
  2150. 1:15:22if I take any Chinese related website.
  2151. 1:15:25So, Chinese Chinese is a country. All
  2152. 1:15:28their websites are there in Chinese
  2153. 1:15:30language.
  2154. 1:15:32But, nobody can understand those website
  2155. 1:15:34from the world. Only those country
  2156. 1:15:36specific people can understand. And
  2157. 1:15:38those country specific people can use
  2158. 1:15:40those applications. Even other countries
  2159. 1:15:42also cannot access those applications.
  2160. 1:15:45In those applications, we can conduct
  2161. 1:15:47localization testing. Whether our
  2162. 1:15:49applications are supporting their own
  2163. 1:15:52local languages or not. Their own local
  2164. 1:15:54format. Suppose date will be
  2165. 1:15:57The date format will be different from
  2166. 1:15:58one country to another country.
  2167. 1:16:01And if the application support all kinds
  2168. 1:16:03of formats,
  2169. 1:16:04that is a globalization. Or if
  2170. 1:16:06application support a specific format of
  2171. 1:16:08date, that is related to specific
  2172. 1:16:11region or specific geographical country
  2173. 1:16:13or specific culture.
  2174. 1:16:15That is localization.
  2175. 1:16:17So, overall
  2176. 1:16:18the globalization testing in the sense
  2177. 1:16:21testing our application which is
  2178. 1:16:22supporting globally or not.
  2179. 1:16:26And localization testing means we verify
  2180. 1:16:28our application is supporting the local
  2181. 1:16:30community or local languages or not.
  2182. 1:16:34That is called localization localization
  2183. 1:16:36testing. Again, this is again part of
  2184. 1:16:37the requirement. Now, let us understand
  2185. 1:16:40the points. The globalization testing
  2186. 1:16:42performed to ensure the system or
  2187. 1:16:45software application can run in any
  2188. 1:16:48cultural or local environment. It also
  2189. 1:16:51includes local. Okay? Global means what?
  2190. 1:16:54Whole whole world. Local is not which is
  2191. 1:16:56a part of the global. So,
  2192. 1:16:59perform to ensure the system or software
  2193. 1:17:01application can run in any culture or
  2194. 1:17:03local environment.
  2195. 1:17:05Different aspects of the software
  2196. 1:17:06application are tested to ensure that it
  2197. 1:17:10supports every language and different
  2198. 1:17:12attributes.
  2199. 1:17:14See, means global means it should able
  2200. 1:17:15to support all kinds of languages.
  2201. 1:17:18In different countries,
  2202. 1:17:19they can use application in different
  2203. 1:17:21language.
  2204. 1:17:22Okay? So, that is a globalization
  2205. 1:17:24support.
  2206. 1:17:25And it test the different currency
  2207. 1:17:27formats. So, currencies will be
  2208. 1:17:28different. Mobile number formats will be
  2209. 1:17:30different. Address formats will be
  2210. 1:17:33different.
  2211. 1:17:34So, if your application support all
  2212. 1:17:36kinds of currency formats, all kinds of
  2213. 1:17:38mobile numbers, all formats, all
  2214. 1:17:40addresses,
  2215. 1:17:41then we can conduct globalization
  2216. 1:17:42testing.
  2217. 1:17:44Basically, we are checking which is
  2218. 1:17:45supporting all globally
  2219. 1:17:47common attributes or not. So, that is
  2220. 1:17:50globalization testing. For example,
  2221. 1:17:52facebook.com it support multiple
  2222. 1:17:54languages. In your Facebook, you can do
  2223. 1:17:57the posting your local languages and
  2224. 1:17:59global languages also.
  2225. 1:18:01That is one example.
  2226. 1:18:02And localization testing. Perform to
  2227. 1:18:05check system or software application for
  2228. 1:18:06specific geographical and cultural
  2229. 1:18:08location. In specific country, if they
  2230. 1:18:11are using that application,
  2231. 1:18:12that support localization.
  2232. 1:18:14Suppose the language, date formats,
  2233. 1:18:17okay? And mobile number formats, address
  2234. 1:18:19formats will be there in the localized
  2235. 1:18:21support. And in which format they are
  2236. 1:18:23exactly following in their environment,
  2237. 1:18:25so all that application will support
  2238. 1:18:27only that format. So, we are going to
  2239. 1:18:28test them. That is called localization
  2240. 1:18:30testing. So, localized product only
  2241. 1:18:32support the specific kind of language
  2242. 1:18:34and it is usable only in the specific
  2243. 1:18:36region.
  2244. 1:18:38And it test the specific currency
  2245. 1:18:39format, mobile number format, address
  2246. 1:18:42format is working properly or not.
  2247. 1:18:44So, here baidu.com this is basically
  2248. 1:18:47like a Google application in China. So,
  2249. 1:18:49in China people they don't use any
  2250. 1:18:51global applications. They will design
  2251. 1:18:53their own applications. Even Windows
  2252. 1:18:55also they have design in Chinese
  2253. 1:18:57language.
  2254. 1:18:58Okay? So, google.com, facebook.com,
  2255. 1:19:00online payment applications, online
  2256. 1:19:02e-commerce applications, everything they
  2257. 1:19:04will design their own language for their
  2258. 1:19:06country, not for the world.
  2259. 1:19:08So, almost all their applications are
  2260. 1:19:11supporting localization.
  2261. 1:19:13Okay? If there is another if you have
  2262. 1:19:15such type of applications, you have to
  2263. 1:19:17conduct localization testing.
  2264. 1:19:19And our in our application the date
  2265. 1:19:21formats are related to their local
  2266. 1:19:23region or not, standard or not, mobile
  2267. 1:19:25number.
  2268. 1:19:26So, these things we have to focus while
  2269. 1:19:28performing the globalization and
  2270. 1:19:30localization testing.
  2271. 1:19:33Okay?
  2272. 1:19:34And now,
  2273. 1:19:35that's it, guys. So, these are all
  2274. 1:19:37uh different testing terminologies. And
  2275. 1:19:39from the next session, we are going to
  2276. 1:19:41see uh different testing techniques. So,
  2277. 1:19:44what we have covered in the today's
  2278. 1:19:45session is
  2279. 1:19:46what is regression testing,
  2280. 1:19:48what is retesting, and what are the
  2281. 1:19:50differences between regression testing
  2282. 1:19:52and retesting.
  2283. 1:19:54Right? And then, we have discussed about
  2284. 1:19:57smoke testing and sanity testing. Also,
  2285. 1:19:58we have compared
  2286. 1:20:00exploratory testing, ad hoc and monkey
  2287. 1:20:02testing also we have discussed
  2288. 1:20:04individually and also have compared.
  2289. 1:20:07Then, positive testing and negative
  2290. 1:20:09testing.
  2291. 1:20:10And finally, we discussed end-to-end
  2292. 1:20:12testing. And then,
  2293. 1:20:15localized testing,
  2294. 1:20:18localization
  2295. 1:20:21and internet globalization also called
  2296. 1:20:24as internationalization, okay?
  2297. 1:20:26Globalization or
  2298. 1:20:28internationalization
  2299. 1:20:30testing.
  2300. 1:20:32So, this is also called as I18N testing,
  2301. 1:20:35guys, okay? I18N
  2302. 1:20:38in means I means internationalization.
  2303. 1:20:41So, after I, there are exactly 18
  2304. 1:20:44characters are there.
  2305. 1:20:45So, in shortcut, we can say it is I18N
  2306. 1:20:48testing. So, whenever you see this kind
  2307. 1:20:50of term, you can understand this is
  2308. 1:20:52internationalization testing, also
  2309. 1:20:54called as globalization testing.
  2310. 1:20:57Okay? So, these are the different
  2311. 1:20:59terminologies which we need to
  2312. 1:21:00understand in testing. Very, very
  2313. 1:21:03important.
  2314. 1:21:05Okay? So, I'll stop here for today's
  2315. 1:21:07session. And then, in the next session,
  2316. 1:21:09we will discuss about test design
  2317. 1:21:11technique and other other topics. Okay?
  2318. 1:21:14Yeah.

About this transcript

This page contains the full transcript of Manual Software Testing Training Part-5 by SDET- QA, generated from the public captions YouTube serves with the video. The transcript has 12,959 words across 2,318 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.