Testing GUI Apps - What to test? How to test it? Mini Coding Course for Beginners

Поделиться
HTML-код
  • Опубликовано: 22 дек 2024

Комментарии • 78

  • @magowiz82
    @magowiz82 Год назад +14

    To be honest I expected you would have used an automated testing software to make your tests interact directly with your application gui. Probably since this is a general video about testing is better like this, I don't know of you or your followers are interested and if they knows about this kind of software, by the way I'm using for my kivy/kivymd application this combination to have pretty good automated tests:
    - telenium : application that is able to interact with kivy gui using xpath to select widgets
    - pytest : a test suite for python
    - pytest-bdd : which is a plugin for pytest that implements bdd and permits you to use gherkin language to define your tests step and bind python methods to your gherkin steps.
    I hope this information could be useful.

    • @PythonSimplified
      @PythonSimplified  Год назад +8

      Thanks for the AWESOME Kivy testing tips! 😃 Much appreciated!
      Telenium is definitley on my list, I will cover it in a future series of a Kivymd app from head to toe (or tail... should I say 😉).
      For the current video, I wanted a general testing tutorial that covers what to test and how to test it regardless of the GUI library we're using 😃
      Now that it's out of the way - we can move on with more complex/specific stuff.
      Thanks again! Pinning your comment to the top! Cheers! 🙂🙂🙂

    • @zzzkeepgrindding
      @zzzkeepgrindding Год назад

      ​@@PythonSimplified@Python Simplified I really like the python course you explain it very good and easy. love tour vids

  • @wagnerjosegertrudesmuitoal3638
    @wagnerjosegertrudesmuitoal3638 Год назад +1

    This is the best testing video I've ever seen, it's a very comprehensive and secure set of tests, and the way your eyes light up when you talk about programming is unforgettable, thank you!

    • @PythonSimplified
      @PythonSimplified  Год назад +1

      Yeeeeeyyy!! Thank you so much for the incredible feedback!! Super happy you found it helpful! 😃😃😃

  • @rahmanabdullah1049
    @rahmanabdullah1049 Год назад +2

    You make things so simple to understand and apply. Thank you!

  • @bombus1340
    @bombus1340 Год назад +8

    +1 for a video about SQL Injection! I've seen videos about what to do to avoid them, but nobody demonstrates examples for Injections and it always feels like "avoid it, because I say so". I'd like to see exaples for possible Injections attacks to get the full picture.

    • @PythonSimplified
      @PythonSimplified  Год назад +4

      Great! I've seen so many requests already, it's safe to assume a simplified tutorial is needed! 😉
      We'll do the following: I'll design an example webapp that each of us can clone and experiment with on our own device. That way, we are not attacking an actual server, rather than our own local environment.
      Thank so much for the request! I'll start conceptualizing a very nice tutorial 🙂

  • @carstenjensen3123
    @carstenjensen3123 Год назад +4

    You are absolutely sensational at explaining complex stuff in a straightforward way. Thanks for this video. Now, could you please make some videos about some simple Kivy and Kivymd apps and getting them to run on android?

    • @PythonSimplified
      @PythonSimplified  Год назад +1

      Thank you so much! I already have quite a bunch of simple GUI tutorials for kivy/kivymd!
      Both for Android and Desktop 😉
      Here's the list:
      🥝 Mobile App with KivyMD - Python GUI for Android - Binary to Decimal Converter:
      ruclips.net/video/ah3JeHAfM0M/видео.html
      🥝 Convert Python KivyMD App to Android .apk:
      ruclips.net/video/VsTaM057rdc/видео.html
      🥝 Simple Python App with Kivy - Step by Step GUI Tutorial:
      ruclips.net/video/YDp73WjNISc/видео.html
      My next major project would be with kivymd (they actually just released new id designation commands for Python purists like myself 🤩).
      This project will include a step by step codealong, automation with Telenium and unittest/pytest, as well as deployment to several mediums (I've heard it can be adapted into a web app, I need to test is it works.
      BTW, the folks behind Kivymd are viewers of this channel, you'll see them once in a while in the comments 🙂

  • @MrJerrylikes
    @MrJerrylikes Месяц назад

    Thank you. You are very informative and explain everything extreamly well. Keep up the great work. 🎉

  • @_isDev
    @_isDev Год назад +2

    amo a esta mujer! gracias por los tutoriales!

  • @paulthomas1052
    @paulthomas1052 Год назад +3

    Thanks for another great video - I found it easy to follow and very useful.

    • @PythonSimplified
      @PythonSimplified  Год назад +1

      Thank you so much!! glad you like it! 🙂🙂🙂

  • @taskhopper
    @taskhopper 7 месяцев назад

    Thank you so much for this tutorial honestly. You're such a lifesaver!

  • @Chernikru
    @Chernikru Год назад +1

    I love your English so much. This pronunciation is just something. Usually I don't even understand familiar words, but this is different. And of course, the explanation is excellent. Oh yes, you are also an incredible cutie and a very charismatic person.)
    P.S.
    Надеюсь гугл переводчик хорошо справился со своими обязанностями

    • @PythonSimplified
      @PythonSimplified  Год назад

      а зачем гугл переводчик? я прекрасно читаю и говорю по русски 😉
      большое спасибо за коммент! 🙂

    • @Sinke_100
      @Sinke_100 Год назад +1

      Yes, I like voice too, it's so melodic and full of joy

  • @valerieocanaable
    @valerieocanaable 10 месяцев назад

    The cat was comic relief. I love it!

  • @jeuxmathinfo9578
    @jeuxmathinfo9578 Год назад +2

    Very useful! Thanks for sharing !!! 🌹

  • @haplo666
    @haplo666 Год назад +2

    YES YES YES, please create a vidoe with SQL malicious inputs!!!

    • @PythonSimplified
      @PythonSimplified  Год назад

      Fantastic!! We got 2 requests in the comments already - 3 more and you got it! ;)

  • @carlospitcher4335
    @carlospitcher4335 Год назад +3

    Excellent content!
    now i want to know more about SQL injection!

    • @PythonSimplified
      @PythonSimplified  Год назад +2

      Thank you so much! A few more viewers mentioning SQL Injection - and you got it! 😉
      (it's so easy, you will never believe it!!!)

    • @magowiz82
      @magowiz82 Год назад +2

      Do I have to mention SQL injection to ask you to talk about SQL injection in another video about SQL injection? OK I mentioned three times, I hope it counts like this 😂

    • @PythonSimplified
      @PythonSimplified  Год назад

      @@magowiz82 hahahahaha now I must!! Don't worry, I am definitley filming this.
      It's highly unusual to see so many comments about something I've mentioned at the end of a 38 minute-long tutorial 🤪
      I'll start working on it shortly, katching up with school in the next few days and then I'll move on with SQL Injection mad scientist simplified video 🙂

  • @lewisjade
    @lewisjade Год назад +1

    This is incredible
    I ❤ it!

  • @ekvilibriumm
    @ekvilibriumm Год назад +1

    The clarity of your voice is very eargasmic on top of that you are such a beauty! And... U're so intelligent too?! What the heck! U are best, I love u my Cutie Pie !! Hahhaha❤😂

    • @PythonSimplified
      @PythonSimplified  Год назад

      hahahaha thank you so much for the lovely comment! 😀

  • @tonym5857
    @tonym5857 Год назад

    Great video 👏👏👏 testing is mandatory 💪

  • @hamed6899
    @hamed6899 Год назад

    You are a really good teacher.

  • @erickleuro6159
    @erickleuro6159 Год назад +1

    loving the cat at 23:16

  • @MrPennywise1540
    @MrPennywise1540 Год назад

    I have a Python code that use Tkinter to make a GUI. This code edit images. Now, I'm developing my webpage with Django, and I want to run the GUI code in my page. I hoped I could sove it with PYSCRIPT, but it's not compatible. I'm in a dead end. Can someone give me an advice?

  • @alexcaruajulca
    @alexcaruajulca Год назад +1

    thanks for the subtitles

  • @СеменХеруимов
    @СеменХеруимов Год назад +1

    Спасибо :)

  • @minaahosaam7961
    @minaahosaam7961 Год назад

    Good video and this great App

  • @أحمدمرجان-ج6ر
    @أحمدمرجان-ج6ر Год назад

    Fantastic video, need a tutorial about flet framework

  • @Sinke_100
    @Sinke_100 Год назад +1

    Mariya, I didn't download the code, but from watching the video when I see alot of elifs I wonder if perhaps is cleaner solution to it?
    def error_check(a, b, c):
    l = [a, b, c]
    l = [i for i in l if i]
    d = {0:'nothing provided', 1:'please enter one more side', 3:'you don\'t need me'}
    x = None if len(l) == 2 else d[len(l)]
    return x
    error = error_check('3', '3' , '')
    if not error: print('This is where you call another function that handles calculations') something like this perhaps

    • @PythonSimplified
      @PythonSimplified  Год назад +1

      Cleaner solution is always better! Fantastic refactoring, Sinisa!!! (As usual! 🤪) much appreciated! 😃

    • @Sinke_100
      @Sinke_100 Год назад

      Now that I cloned and try your app, here is my solution:
      def callback(self, this_button):
      '''
      a method executed each time the submit button is pressed
      '''
      self.message.text = self.pythagorean()
      def pythagorean(self):
      a = self.input_a.text # leg
      b = self.input_b.text #leg
      c = self.input_c.text # hypotenuse
      x = len([i for i in (a,b,c) if i])
      d = {0:"oops! no input was recieved! please enter 2 side lengths to get the 3rd!",1:"please enter one more side length to get the third!",2:False,
      3:"if you already know ALL sides then you don't need me!"}
      if d[x]: return d[x]
      missing_index = [i for i,j in enumerate([a,b,c]) if not j][0]
      lh = lambda x,y: str((float(x)**2+float(y)**2)**(1/2))
      ll = lambda x,y: str((float(y)**2-float(x)**2)**(1/2))
      d = {0: lambda: ll(b,c),1:lambda: ll(a,c),2:lambda: lh(a,b)}
      return d[missing_index]()

  • @gemini1053
    @gemini1053 Год назад +1

    Great video tutorial.

  • @shakhnozahalilova3249
    @shakhnozahalilova3249 Год назад +1

    Hi Mariya, what's up?
    Mariya, Could you tell me about how to build a gui program that locks an exe file with given password by user and when user attempts to enter that exe app, a form should ask for a password to enter that exe app?
    No matter, in which programming language is needed to do that
    So, plz give me your advice on how to build that kind of app

    • @PythonSimplified
      @PythonSimplified  Год назад +2

      I actually have the perfect set of tutorials for you! 😁 (it rarely happens!!! hahaha)
      To lock your setup file with a password (not .exe, but the actual setup wizard that leads to your .exe) you can follow this tutorial:
      ⭐ Convert GUI App to Real Program - Python to exe to setup wizard
      ruclips.net/video/p3tSLatmGvU/видео.html
      then at minute 19:44 just set the password you'd like instead of leaving it blank.
      In addition, I highly recommend following the tutorial of the example GUI app we are converting.
      It uses a GUI library called Tkinter, which is very traditional and popular in Python. That way you can learn many principles of app making and then apply it on your own ideas.
      Here's a link:
      ⭐ Create GUI App with SQLite and Tkinter (Random Recipe Picker):
      ruclips.net/video/5qOnzF7RsNA/видео.html
      Good luck and I hope it helps! 🙂🙂🙂

    • @shakhnozahalilova3249
      @shakhnozahalilova3249 Год назад +1

      @@PythonSimplified Yeah(Mariya), thanks. The interesting part of that is I've asked for it from a person who works at Facebook as senior software engineer, and he said, "It's kind of hard thing to do." And he also replied that, Because what you're actually requiring for requires good knowledge of assembly and other things to do

    • @PythonSimplified
      @PythonSimplified  Год назад

      Usually yes - but luckily I had a chance to simplify the entire process already!
      I've done the hard part so you guys don't need to deal with it on your end 😉
      (Also, maybe share it with the Facebook guy if he doesn't like to deal with assembly 🤪 hahahaha)

    • @shakhnozahalilova3249
      @shakhnozahalilova3249 Год назад +1

      @@PythonSimplified yeah. Mariya, he's older than me and he has a family. I'm sixteen. And I asked for him "why not the most developers want to do this", and he replied me like "Not everyone want to do, because they have a their own job and they don't want spend their time on these kind of things". This so inspiring for me to make great effort to become such this great developer in the future.(I've never talked to such this kind of a person who is ready answer questions sincerely,people who are interested in programming or IT, generally)

    • @PythonSimplified
      @PythonSimplified  Год назад +2

      ​@@shakhnozahalilova3249 senior developers tend to dismiss juniors with "read the manual" type of answers. They can explain it in 1 minute or send you on a long Google-search journey to maybe find an answer. I think it's silly and unprofessional, but then... I'm not a senior developer, so maybe it's an acquired quality 😅 hahahaha

  • @ibrahimmoawadibrahim7332
    @ibrahimmoawadibrahim7332 Год назад

    Great

  • @diwakar_tsn
    @diwakar_tsn Год назад +1

    As always ❤🔥

  • @rahneshin752
    @rahneshin752 Год назад +1

    ❤❤

  • @gantebang
    @gantebang Год назад

    “Pie-thag-re-um” i got you 🤓

  • @mibrahim4245
    @mibrahim4245 Год назад +1

    Thank you M

  • @rishik-w1j
    @rishik-w1j Год назад

    please post your content regularly

  • @vishnusudheer6049
    @vishnusudheer6049 Год назад

    Hi can you help make a program which tracks drones using webcam of pc in python

  • @LastdayPhysics3960
    @LastdayPhysics3960 Год назад

    Was is live? I missed it?

  • @ricardodeoliveiraalves339
    @ricardodeoliveiraalves339 Год назад

    oh trem bunito essa muié... e ainda é programadora e inteligente!

  • @dsrealmofmeme
    @dsrealmofmeme Год назад

    Hey Mariya, love from India. Can you please make a tutorial of making a 3d realistic game in python?

  • @nalinperera5754
    @nalinperera5754 Год назад +1

  • @anthoniG
    @anthoniG Год назад

    Was rather hoping it would be testing for QT (either PyQT or PySide)

  • @JSL180
    @JSL180 Год назад

    `libGL error: MESA-LOADER` solved with `conda install -c conda-forge libstdcxx-ng`

  • @aneellakhani6535
    @aneellakhani6535 Год назад

    So beautiful

  • @iamleonardjunior1877
    @iamleonardjunior1877 Год назад

    Code mother,can you create a video on hacking

  • @baseddepartment1306
    @baseddepartment1306 Год назад

    If you are not testing in production you are overthinking it

  • @TheGroundskeeper
    @TheGroundskeeper Год назад

    I love you.

  • @1PartiZzan
    @1PartiZzan Год назад +1

    Ээээййй 🙀

  • @mohamedrebbouh
    @mohamedrebbouh Год назад

    Focus on video content ❌
    Focuse on The pitch of your voice ✅
    🤣🤣

  • @RobloxBedwarsPlayer01
    @RobloxBedwarsPlayer01 Год назад

    Why are you too beautiful ? 😁

  • @MegaZigzag69
    @MegaZigzag69 Год назад +1

    No, you too beautiful ))

  • @Rammen
    @Rammen Год назад

    Давай поженимся!?😊

  • @ZolotarLudmila
    @ZolotarLudmila Год назад

    If you don't make mistakes, then you are solving too simple problems. And this is your biggest mistake.

  • @الباشاعثمان
    @الباشاعثمان Год назад

    hello teacher can i text you on Email ?