Fala galera sejam bem-vindos a mais uma aula do nosso projeto que Whey na prática dentro dessas nossas aulas a gente fala sobre dicas e estratégias de como fazer você conseguir alavancar sua carreira e aumentar o seu salário em mais de 30% Eu sou o Júlio de Lima especialista em testes e qualidade de software atuando na área mais de 12 anos sou especialista em docência no ensino superior e mestre engenharia elétrica e computação com foco em testes Inteligência Artificial e na nossa Episódio de hoje a gente fala sobre o que faz um analista de testes e
qualidade de software na prática nessa aula a gente vai aprender através de exemplos práticos quais são algumas das atividades que um kiwi desempenha dentro do seu dia a dia e a gente vai conseguir então vendo através desses exemplos Como é o dia a dia de alguém que atua nessa área e a gente vai então conseguir ao menos vislumbrar um grupo de atividades de experiências práticas tanto técnicas quanto o comportamentais que são extremamente importantes na vida de alguém que atua na área de testes e qualidade de software eu quero te deixar bem claro já desde esse
primeiro momento aqui que o papel analista de testes e o papel analista de qualidade de software são dois papéis distintos o analista de testes tá bem mais focado em o que a gente chama de maneira mais técnica de controle de qualidade que é quando a gente tem ações ou atividades que estão relacionadas diretamente a entender a qualidade de um produto enquanto a gente tem um analista de qualidade de software que tá muito mais relacionado ao que a gente chama de garantia da qualidade que é basicamente olhar para a qualidade dos processos em si e a
mistura dos dois daria ali então né aquilo que a gente tem como sendo a qualidade de software como um todo entretanto quando a gente vai hoje para o mercado o mercado ele não tem essa distinção ele não faz essa distinção que a gente vê na literatura o mercado acaba por chamar o profissional que faz testes e que faz a parte de garantia da qualidade de uma coisa só chamam ele de kiwi Quando você vai olhar de perto você percebe que não é um keeway mas sim é uma espécie de um analista de testes que faz
algumas coisas relacionadas à qualidade do processo Entretanto é assim que o mercado chama o profissional hoje por isso durante esse durante essa aula de hoje a gente vai usar esse termo analista de testes e qualidade de software que Whey para que você possa então entender que é a pessoa que está trabalhando com testes de software dentro de um time ágil Ok então só para deixar super Claro aqui para vocês já desde o começo desse nosso vídeo ok durante esse durante essa nossa aula de hoje eu vou fazer uma uma transição para uma outra tela que
eu tenho aqui que é uma tela de um documento em texto puro Tá bom eu acredito que o tamanho deve estar bom aí para vocês tá bom mas eu vou ficar aí transferindo a tela entre o documento em texto e aqui o nosso slide também para que fique bem claro aí para vocês e a gente consiga então trabalhar aqui nesses dois documentos tá bom Aqui a gente fala da questão relacionada à Teoria em si e o meu guia né para essa aula de hoje aqui a gente vê na prática como é que as coisas acontecem
Ótimo vamos lá então porque é um primeiro ponto que a gente precisa saber aqui relacionando-se especificamente já a atuação do kiwi dentro do seu dia a dia é que o que Whey ele está atuando de uma maneira super engajada em algo que em tecnologia a gente chama de processo de desenvolvimento de software O que é o processo de desenvolvimento de software ele é basicamente um processo é uma série de etapas nas quais um time trabalha junto para conseguir transformar uma ideia em um software utilizável eu vou te dar um exemplo aqui só para ficar super
claro para você essa questão do processo de desenvolvimento de software tá bom você tá andando na rua e durante a sua caminhada você percebe que o seu coração ele começa a bater de uma forma diferente e de repente você começa a se sentir mal assim sabe você naquele dia caminhou durante 12 km nessa sua caminhada 12 km e na maioria das vezes você fazia caminhadas que iam que no máximo até quatro quilômetros mas naquele dia não aquele dia você caminhou 12 km você começou a se sentir mal você se sentiu mal e essa Sua percepção
do não estar se sentindo bem ela aconteceu depois que o seu corpo já estava dizendo isso para você ou seja você não conseguiu identificar sinais antes que dizia que dissessem para você assim olha você vai passar bem mal daqui a pouco entretanto se a gente tivesse algum tipo de monitor a gente conseguiria ver que já no sexto no oitavo no décimo quilômetro o seu corpo já começou a reagir de uma forma diferente apresentando por exemplo um batimento cardíaco mais alto sei lá algumas outras características que fazia com que você se sentisse mal naquele dia você
passou mal e precisou ser medicado e aí no outro dia quando você acorda você fala cara E se eu tivesse um software que pudesse ficar rodando no meu celular analisando os padrões que existem do meu organismo com base naquele sensores que o relógio tem e pudesse Então me dizer se tentar antecipar se eu vou passar mal ou não dado aquela naquele ritmo que eu que está acontecendo na minha vida naquele momento isso Seria maravilhoso você pensa e depois de pensar disso você então dali tem uma ideia que a ideia de criar um software que vai
ajudar outras pessoas a fazer isso até aqui tudo bem para vocês né depois de ter essa ideia você Então vai e faz uma pesquisa é uma pesquisa para saber se existem outros softwares que já existem que fazem isso você faz uma pesquisa investiga 10 softwares que são similares mas percebe que nenhum deles faz a mesma coisa que o seu faz ou que a sua ideia faz você então é se comunica com algum amigo seu que é desenvolvedor de software e fala Olha eu queria desenvolver um software dessa natureza ele fala eu consigo desenvolver aí ele
fala mas eu consigo desenvolver só que eu não sou muito bom em testes Então você fala vou conversar com um amigo meu de testes e você conversa com um amigo seu GTS ele fala ah eu consigo ajudar Nesse momento você tem uma ideia você já fez uma pesquisa você tem um amigo que desenvolve uma amiga que testa E você tem outros amigos que são capazes de colocar aquele produto para você disponível para que todas as pessoas possam baixar e utilizar entende aqui o tudo que aconteceu uma ideia uma pesquisa um pedaço de software testes relacionados
àquele software e uma entrega daquele produto em produção isso daqui tudo que a gente falou a gente pode chamar de um de uma esteira de desenvolvimento o processo seria assim tudo nasce com uma ideia a ideia precisa ter uma pesquisa que é fundamente Além disso precisa ter telas que descrevam como software tem que ser Além disso tem que passar pela mão de uma revisão de um outro profissional Depois dessa revisão o desenvolvedor pode assumir aquela tarefa e começar a desenvolver o código enquanto desenvolve ele tem que conversar com um keeway para que os dois façam
interações de modo que o que o Ei possa investigando se o software possui qualidade depois que atingiram já um momento onde existem algumas funcionalidades já implementada isso já pode ir para a produção mas só vai para a produção depois que passou pelas mãos de alguns clientes alguns possíveis clientes que darão feedback e se 80% do feedback for positivo isso quer dizer que o software Pode ser então é colocado à disposição de outros usuários que vão baixar e fazer uso o processo também ele tem papéis responsabilidades o que o erro é responsável por parear com o
desenvolvedor por pensar nos testes por analisar os riscos por testar por reportar os defeitos entende tem lá uns papéis de responsabilidades o desenvolvedor é responsável por entender a ideia codificar a ideia corrigir bugs colocar o software à disposição do pessoal que vai colocar o software em produção o product que é o dono do produto aqui é a pessoa que vai pensar nas ideias realizar as pesquisas descrever como esse software precisa funcionar irá também se comunicar com um profissionais de design para que eles possam desenhar as telas desenhar as funcionalidades de modo que então isso possa
ficar claro para os desenvolvedores Depois tem papéis e responsabilidades também Esse é um processo de desenvolvimento hoje em dia existem diversas formas de você rodar esse processo de desenvolvimento existem até modelos que já são prontos você sei lá usa um modelo que já é proposto por alguém ou por alguma empresa diversas empresas propor um modelos de desenvolvimento de software Ok e você pode ir simplesmente usar existem também frameworks por exemplo é um Framework de um método ágil que é utilizado ali para que a gente saiba como desenvolver o software seguindo algumas algumas alguns princípios alguns
valores que estão relacionados a forma com que o time vai interagir e entregar softwares basicamente é isso interessante tudo isso que eu acabei de dizer agora para vocês está relacionado diretamente ao processo como um todo de desenvolvimento de software você que o Whey Quando vai ter quando vai trabalhar como que o Whey na prática você precisa conhecer esses processos você precisa entender Qual é o processo de desenvolvimento de software por quê Um porque você entende Qual é o passo a passo de desenvolvimento do software 2 porque você entende Qual é o seu papel e responsabilidade
agora nem o a questão da do conhecer o processo e nem a questão de conhecer o papel e responsabilidade está relacionado diretamente ao cerne da sua da sua profissão alcore ao que está dentro do seu papel em si as habilidades técnicas que você como que o ex precisa ter porque isso porque nos papéis responsabilidades fala sobre algo muito abrangente por exemplo o que o Ei tem que testar o que o Hey tem que identificar a qualidade do produto o que o Whey precisa reportar defeitos o que o Whey precisa automatizar testes o que o Whey
precisa analisar riscos precisa identificar sabe isso tudo que eu tô falando é algo muito genérico muito abstrato dentro de cada um desses pontos existe uma série de características que precisam ser levados em consideração e hoje o que eu quero trazer para vocês é um início de cada uma dessas atividades que são as atividades mais comuns dentro do dia a dia nas organizações eu vou voltar aqui para vocês então a nossa tela ok e vou avançar aqui nessas 10 caixas que representam aqui 10 atividades que um que Whey pode atuar dentro de um time ágil ok
entenda o seguinte quando a gente fala sobre um kiwi atuando dentro de um contexto ágil isso significa muitas coisas uma delas que pode haver uma disparidade entre o que a sua empresa atual entende quanto ao seu papel dentro do ágil perante a sua empresa anterior Sabe por que disse porque não existe uma uma regulamentação que está relacionada diretamente aos frameworks ages que dizem no detalhe O que é com que o Ei tem que fazer então geralmente a empresa vai lá e ler uma coisa por exemplo chamada scrum Guy o guia do scream e lá tá
falando sobre o scream se que é o Framework para utilizar dentro do processo mas ela não tá escrito assim e o que o Ei precisa ter essas habilidades você precisa desempenhar essas ações Então o que acontece cada um implementa isso do jeito que quer dentro da sua empresa então às vezes tem uma empresa que tá tem cinco empresas que estão usando ágil em cada uma delas tem uma variação desses dessas atividades que vocês vem aqui Então você tá assistindo aqui agora esse vídeo tá assistindo aqui essa aula provavelmente você tá olhando para uma dessas caixas
aqui eu vou dar um exemplo você tá olhando para para segunda caixa da esquerda para direita Na parte de cima está falando assim definição de plano e estratégia de teste eu não faço isso na minha empresa hoje talvez outra pessoa tá aqui olhando para por exemplo para para a primeira caixa da esquerda para direita Na parte de baixo tá falando assim mas lá na minha empresa eu não faço revisão de artefatos talvez alguém tá olhando aqui para a última caixa da esquerda para direita Na parte de cima e tá falando assim lá na minha empresa
no automatismo testes funcionais e não funcionais porque isso porque não existe um padrão entretanto que eu posso dizer para vocês é assim dentre todas as empresas que eu já passei entre todas as empresas que eu já passei essas 10 atividades eram as atividades que eram realizadas na maioria das vezes Ok algumas outras com outras e aqui como a gente está fazendo essa aula para que cada um de vocês consiga sair daqui preenchido com uma informação nova e algo que você possa usar na prática já na segunda-feira eu trouxe aqui para vocês essas 10 e a
gente aborda cada uma delas aqui enquanto a gente tiver dentro dessa aula beleza assim Ótimo vamos lá então porque a primeira coisa que a gente vai falar é sobre essa atividade aqui compreensão de requisitos funcionais e não funcionais Deixa eu voltar para cá porque isso que a gente vê aqui isso que a gente vê aqui pode ser considerado como um grupo de requisitos funcionais sabe o que que é isso isso daqui é uma user Store a gente chama assim tá no contexto de desenvolvimento de software dentro de um contexto ágil isso daqui é uma user
Story que possuem-se regras e critérios de aceitação Ok esse daqui é um critério de aceitação essa daqui são as regras e essa daqui é user Store beleza quem cria a user Story em sua maioria é um papel dentro do time chamado Pio ou product io faz é basicamente vir aqui na funcionalidade de escrever Qual é o nome da funcionalidade que ele ou ela acredita que precisa ser implementado no software para que o usuário possa ter uma experiência interessante dentro da aplicação ok O pior também além de vir com esse nome ele vem também com essas
três linhas aqui ó como quero e para onde ele descreve um pouco mais sobre o papel ou sobre a história que o usuário vai viver dentro da aplicação olha só o que ele fala ele fala como um cliente do Banco Então veja não é um cliente da barraca não é um cliente da loja não é um cliente sabe do serviço que você presta não é um cliente do Banco essa história conta a história de um cliente no banco um cliente do Banco que quer transferir dinheiro para amigos e instituições Então não é um cliente do
Banco que quer sabe sacar não o cliente do Banco que quer contratar um seguro não é um cliente do Banco que quer transferir grana qualquer coisa que não tem a ver com transferir grana não está aqui dentro para não precisar ter que levar o dinheiro em espécie para os seus amigos ou para as instituições isso daqui é uma história de usuário ok a história de usuário ela tem regras regras são definidas dessa forma aqui ó regras dois pontos e aí tem lá as regras uma com cada hífen aqui no começo Então fala o seguinte ó
Isso aqui é a história mas ó tem algumas regras os clientes não podem transferir mais do que 50 mil para pessoas não cadastradas como favorecido o valor transferido entrará como débito na conta a origem e crédito na conta destino clientes não podem transferir valores sem ter saldo e o cliente receberá um e-mail com o comprovante da transferência Essas são as regras que estão relacionadas diretamente a essa user Store e aqui a gente também tem um cenário esse cenário aqui É um cenário que representa um critério de aceitação é quando o piou fala que seja lá
quem for que vai desenvolver essa que vai transformar esse monte de texto aqui em software Seja lá quem for fazer isso precisa garantir para mim que quando falar estou pronto esse cenário aqui vai poder ser realizado vou explicar aqui para vocês tá bom olha só ele fala o seguinte dado que eu tenha saldo de 50 mil e dois centavos e que ou seja cliente e que o destinatário seja meu favorecido todo isso aqui ó são pré-requisitos que o piou colocou lá dentro da sua user Store Ok Esses são pré-requisitos ou seja esse cliente aqui do
banco tem que ter o saldo de 50 mil e dois centavos esse cliente do Banco ele tem que ser cliente e esse cliente do Banco ele tem que ter um destinatário né sendo favorecido aí isso daqui é uma ação ó ação é quando eu transfiro 50 mil e um centavo para o destinatário do favorecido e essa daqui são as condições posteriores então a transferência é realizada de maneira satisfatória o meu novo saldo será de um centavo porque eu transferir 50 mil e um centavos Sobrou um centavo apenas né e o valor de 50 mil e
um centavo eu crescido na Conta do Destino e eu receberei um comprovante de transferência no meu e-mail isso daqui Quem criou foi o piou ok ele ele criou isso daqui e criou esse daqui antes de começar o ciclo de desenvolvimento lembra lá do exemplo que eu dei para vocês no começo que tava você lá dando um rolezinho de repente você se sentiu mal e teve uma ideia de um software Pois é mesma coisa aqui o piolho tava lá de boas na casa dele tava tomando um café de repente ele falou preciso transferir meu cliente precisa
transferir grana e talvez ele não quer sair de casa para evitar aí né o para para Patrocinar o distanciamento social por exemplo entende é isso que ele que ele quis dizer então ele começou a descrever como é que esse software deveria funcionar falando de maneira prática Como eu disse para vocês uma das atividades gerais do que Whey é a compreensão dos requisitos funcionais e não funcionais requisitos funcionais significa como o software tem que funcionar Quais são as funções que o software tem que ter aqui estão alguns requisitos funcionais ok requisitos não funcionais são características que
são adicionais ao software eu vou colocar um aqui como exemplo para vocês tá poderia ter um requisito não funcional que era por exemplo segurança dizendo o seguinte é apenas o melhor vamos colocar assim ó pessoas que não tem um dispositivo um celular cadastrado como sendo dispositivo do cliente não poderão transferir a grana Ok não poderão operar o aplicativo Isso é um é um requisito não funcional de segurança isso fala que a gente precisa avaliar a segurança do software antes de continuar construindo ele certo preciso construir um software seguro tem também uma um requisito não funcional
que o requisito de performance que diz o seguinte olha as transferências em momentos de pico onde eu tiver 5 mil usuários fazendo transferência ao mesmo tempo tem que tem que acontecer em menos de um minuto Essa é um requisito de performance não funcional entende então eu poderia ter requisitos não funcionais e funcionais pensando na prática aqui quando você que o Whey olha para isso a primeira coisa que você tem que fazer é começar a se perguntar criar perguntas que vão ajudar as pessoas que estão na sala a entender se esse requisito aqui se essa user
Store foi escrita de maneira satisfatória Então qual que é o seu papel aqui na prática agora fica pensando em um monte de pergunta lá no dia a dia no processo de desenvolvimento o que vai acontecer o pior vai chamar você que o rei vai chamar os desenvolvedores ele vai apresentar isso e vai contar essa história e ele vai perguntar todos Vocês entenderam e a hora de você encher o piolho de perguntas eu vou começar com uma pergunta aqui para vocês tá bom vamos lá Aqui tá escrito assim ó clientes não podem transferir mais que 50
mil para pessoas não cadastradas como favorecido eu pergunto funcionalidade de cadastrar favorecido ela ela já está habilitada E se eu não tiver cadastrado vai conseguir vai conseguir fazer a transferência E aí talvez o que eu fale não não vai eu pergunto então o que que tem que acontecer tem que mostrar alguma mensagem tem que bloquear a pessoa O que é que tem que acontecer o valor transferido entrar lá como débito na Ponto origem e crédito na conta destino esse débito na conta origem Existe algum tipo de crédito especial que eu poderia que eu poderia usar
porque puxa no meu banco atual eu tenho essa questão de crédito especial que eu posso utilizar pode servir aqui né o Mateus fala assim o que seria esse favorecidos o Vitor fala Existe limite máximo de transação por cliente eu penso clientes não podem transferir valores sem ter saldo e a questão lá do cheque especial é possível quando o cliente não tiver saldo Tem que apresentar alguma mensagem para ele algo algo na linha tipo o cliente você não tem saldo ou será que a gente tem que apresentar para eles a possibilidade deles contratarem o cheque especial
ou apresentar para eles uma página que fala para que ele como é que eles podem fazer transferências após conseguirem contratar um empréstimo no banco né Já pensou que bacana isso o cliente não tem saldo ele tenta fazer a transferência e você oferece e diz olha com base nas suas informações Você poderia pegar um empréstimo nesse valor então consegui transferir essa grana que você quer quer fazer isso agora tá entendendo clique aqui para conversar com o nosso agente de empréstimos não sei eu vou perguntar para tudo isso para o nosso piou para que ele possa então
ir sabe é repensando as características que puxa não estão implícito não estão explícitas aqui ó ele tá falando assim o cliente receberá um e-mail com comprovante de transferência você fala assim mas tá esse e-mail ele vai ser enviado com qual remetente Qual que é o corpo do e-mail qual que são os textos que você quer utilizar aqui para esse determinado e-mail ó a gente já usa um outro e-mail de cupom de comprovação que é esse daqui quer enviar ele mesmo para o cliente que que você acha tão entendendo tem um monte de outras pessoas que
estão aqui pensando em um monte de de características o destinatário tem que ser da mesma instituição financeira precisa de autorização para controle de cheque especial tá o perfil do cliente de cheque especial e se o cliente não tiver um e-mail cadastrado terá um valor limite menor para o horário noturno o método de transferência tem o mesmo processo de bancos divergentes Isso é meio tiver errado Existe algum tipo de transação por dia o comprovante vai por e-mail como que vai ser não dá para a gente colocar uma mensagem de texto eu vou falar uma coisa para
vocês aqui agora se eu fosse o piou eu estaria mega feliz sabe por quê Porque você que o Whey está aqui agindo como que o rei na prática e sendo algo que as pessoas falam que eu acho maravilhoso que é assim tem gente que fala que kiwhey é qual ele é schurence entendeu eu já gosto de chamar de qual ele list é um analista de qualidade mas tem uma coisa que eu sou por natureza enquanto eu estou participando de reuniões como essa aqui um question ashker que é um sabe uma pessoa que faz perguntas tipo
você tem que fazer essas perguntas porque esse é o posicionamento do que o rei nesse momento Ok essas perguntas vão revelar coisas para você que vão te ajudar no nosso próximo passo vamos seguir lá para a gente dar uma olhadinha revisão dos artefatos veja quando eu começo a olhar para esse artefato aqui que é um requisito funcional eu olho para esse artefatos artefatos são documentos tá bom só para ficar bem claro para vocês eu olho para esse artefato aqui e começo a tentar buscar nele se existe algum tipo de problema E aí assim existem diversos
check lists de como revisar a artefatos Sabe tem um monte de checklist esse checklist te dão dicas de como você pode revisar um documento e aí é claro existe um check list para cada tipo de documento então por exemplo se você tá revisando um documento como esse você tem que analisar algumas características se você tá revisando um outro documento você tem outras características se você tá revisando o código tem outras características se você tá revisando uma tela um design de uma tela tem outras características e assim sucessivamente Ok beleza eu vou dar um exemplo para
vocês esse esse documento aqui vocês vão perceber que ele tem uma espécie de um template concorda Olha só o nome da funcionalidade está escrito depois da palavra funcionalidade as regras são descritas com o hífen no começo e elas estão escritas abaixo da palavra regras o nome do cenário está escrito após a palavra cenário dois pontos embaixo do cenário existe aqui essa palavrinha dado e embaixo dela tem esse quando E então e depois tem outros ex tudo isso é um padrão sabe que padrão que é esse sabe que modelo de escrita é essa vocês podem falar
o que vocês quiserem aí agora só não chama de bdd isso daqui não é um bdd porque é DDD é um processo não é um documento muito menos uma sintaxe tá bom essa sintaxe que não é ddd pelo amor de Deus é uma sintaxe chamada girkin Ok e se você quer saber mais sobre girking você pode vir aqui no site do kiuber.io/dooks e você vai ver que aqui existe essa página que a página do garfim coloquei para vocês aí no chat e aqui você vai ter as palavras-chaves que o girlkin possui inclusive esse daqui ó
a partir do 6 já tem que aquele que eu coloquei aqui para vocês ó regras certo Então aqui tem uma documentação completa de como funciona o gank boas práticas entre outros vamos dizer que o piou veio aqui com todo esse documento aqui para você em uma das partes do documento tava escrito assim ó tá vendo tava aqui ó dado que quando então daí ele veio aqui ó ele falou assim ó quando eu abrir meu e-mail e ver o conteúdo da mensagem então perceberem que existe um PDF em anexo tá vendo que está acontecendo aqui que
que aconteceu o pior escreveu dado ao que eu escreveu quando e o pior escreveu então e depois ele escreveu quando de novo e então de novo só que acontece existe uma boa prática no gearking que diz que o a estrutura do cenário precisa ser dado quando então mas você não pode misturar a estrutura repetindo quando depois do então ou fazendo então antes do quando o repetindo dado depois do quando depois não então precisa ser dado quando então dado quando então se tiver qualquer disparidade com relação a isso está errado então no caso como esse se
eu estivesse revisando esse artefato por mais que essa historinha Aqui faça todo o sentido por mais que faça todo o sentido ok por mais que faça todos os sentido esse quando e então aqui ele não pode ok não pode não pode porque existe essa estrutura aqui então se o pio quisesse fazer alguma coisa ele deveria estruturar essa coisa dentro dessa dentro dessa estrutura padrão do Gear quem aqui que é o dado quando então tá bom então entendem o que é uma revisão de um artefato é isso sabe outra coisa que você poderia revisar também código
por exemplo falando na prática tá vamos dizer que o desenvolvedor pegou isso daqui ele começou a desenvolver um script vou começar a desenvolver um script aqui para vocês tá bom vamos lá o desenvolvedor foi lá e pegou esse daqui ó ele pegou isso daqui Ele olhou para essa regra aqui e falou mano agora eu vou desenvolver uma função em JavaScript para lidar com isso aí é o que ele fala ó ele vem aqui e fala assim Pan saldo OK aí Aqui tem que passar Qual é o cliente Beleza deixa eu salvar isso aqui como JS
aí vai ficar mais fácil para vocês tá bom vamos lá deixa eu colocar aqui cadê meu desktop uma hora dessa aqui Belê vamos lá e ponto JS Tá bom vamos colocar assim ah lá aí ele veio aqui e colocou lá função validar saldo do cliente tem aqui o cliente vamos dizer que o cliente é um objeto então o que que ele vai fazer ele vai ver aqui vai falar assim ah clientes não podem transferir valores sem ter saldo então se eu passei o cliente aqui eu tenho que validar e fala assim ó cliente ponto get
saldo for menor do que 0,01 então algo vai acontecer daí ele fala assim ó e aqui ele fala Ritter se por acaso não for esse o caso tá vendo Então o desenvolvedor implementou essa função aqui ok ele implementou essa função implementando essa função ele começou aqui então a começar a construir o software que vai estar por detrás dessa funcionalidade Olha que bacana né interessante só que quando você que o Whey foi verificar isso daqui você falou assim olha o desenvolvedor eu estou aqui olhando esse código seu E esse seu código ele está eu nem vou
olhar aqui se ele está bem escrito se ele tá seguindo as boas práticas do Java script não vou olhar para isso tá bom vou olhar apenas para funcionalidade Olha só eu estou olhando aqui e você tá comparando se o saldo é menor do que zero ponto zero um aí ele fala É isso mesmo Júlia é isso que eu tava pensando aqui cara aí você olha para ele e fala mas olha aqui na história não tá falando sobre 0,01 na história tá falando que não pode transferir valores sem ter saldo e aqui a gente tá falando
que vai transferir uma grana nesse caso esse transferir os valores não seria o saldo ser menor do que o valor da transferência ele fala Caraca Júlio Mano eu não tinha pensado nisso e você fala e eu só estava pensando nisso porque eu tô aqui tentando identificar Quais são os problemas que podem estar acontecendo no software agora mano ele falou caraca mano é muito bacana trabalhar com você porque você tá contribuindo aqui para a qualidade do produto sacou aí você fala não não então diz aqui cara na boa mano dava para trocar esse código e a
gente colocar aqui que o saldo se o saldo for menor do que o valor da transferência Aí sim né vai ser vai ser um problema então fechou mano é isso eu desenvolvedor vai lá e fala assim já sei vou pegar aqui então vou receber mais uma vou receber mais um parâmetro que é o valor valor o quê transferência aí se a quantidade do saldo do cliente for menor do que o valor da transferência aí a gente retorna falso se não retorna true né Aí você fala quer saber outra coisa o desenvolvedor esse nome aqui do
método validar saldo cliente está meio aberto né como que a gente poderia falar algo que dê mais clareza aqui para esse código ele fala pô é verdade Júlio a gente poderia colocar assim ó cliente tem saldo suficiente aí agora sim né Porque daí a gente chama o método cliente tem saldo suficiente e se ele tiver retorna troom se não retorna falso não é legal isso Isso é maravilhoso né bom Vocês entenderam aí como funciona mais ou menos né Essa questão da revisão dos artefatos você queeway pode analisar outras coisas também quando você tá analisando o
código você tá analisando também usando um check list quando você tá analisando tela você tá analisando a tela usando check list também assim sucessivamente Tá bom eu vou seguir aqui só para a gente não perder muito tempo tá bom definição e estratégia de um plano de teste definição de plano e estratégia de teste funciona assim esse tipo de de contato que você tem aqui com um requisito acontece geralmente né em uma em um time ágil dentro de uma reunião chamada reunião de de refinamento ou grooming tá eu vejo que no Brasil chama mais de reunião
de refinamento aqui nos Estados Unidos a gente ainda tem muitas empresas que chamam de grooming tá bom aí o que acontece a gente a gente tem aqui uma um momento né uma um momento onde você já conseguiu pensar em algumas coisas só que você ainda tá no momento em que ainda não começou o desenvolvedor sabe vamos pensar assim tá isso daqui foi apenas para trazer para vocês um exemplo de código mas enquanto você tá revisando esse documento ainda não começou o desenvolvimento sabe Então vamos dizer que você ainda tá desenvolvendo isso o que que você
vai fazer você vai Como que o Whey que o ex criam isso tá bom cria um negócio chamado plano de testes ou estratégia de testes são dois documentos distintos tá eu não vou entrar nos detalhes aqui mas só para você entender é um lugar onde você descreve Quais são as abordagens que você vai utilizar para testar o software Ok o plano de testes por exemplo tem algumas características Quanto é quanto tempo vai demorar quem são as pessoas que estão participando do projeto Quem são quais são os recursos que você vai precisar quais são os riscos
que estão vinculados aquilo a estratégia de testes aponta lá por exemplo quais são os níveis de testes que você quer testar o que que você vai fazer durante a sua abordagem sabe são essas coisas que são determinadas lá dentro Beleza eu vou mostrar só uma delas aqui para você para que você possa ver o quanto é bacana isso também tá bom vamos falar aqui sobre abordagem de teste ok a gente vê aqui que dentro dessa dentro dessa desse nosso como vou dizer aqui nesse nosso requisito vamos dizer assim a gente conseguiu encontrar aqui informações muito
muito importantes aqui para o software em si para forma com software vai ser feito Ok E aí você tem que vir aqui começar a definir é por exemplo o que que você pensa em testar em cada uma das camadas que o software vai ter sabe então o que acontece há uma pergunta que você faz enquanto você tá enquanto você tá participando dessa reunião aqui que é a seguinte pergunta gente aqui não está claro e não nem deveria estar Mas quais são as as camadas que a gente vai usar para desenvolver esse software aí a galera
fala assim para você olha o Júlio a gente vai desenvolver para mobile a gente vai desenvolver para web e a gente vai desenvolver para api aí você fala Espera aí gente que eu tô anotando aqui na minha estratégia de testes a gente vai desenvolver para mobile a gente vai dizer para desenvolver para api e web É isso mesmo que vocês falaram é isso nós falar Que ótimo muito bom mesmo então tá aqui vamos dizer que aqui seja o número 6 lá da nossa da nossa estratégia de testes tá abordagens por níveis ou por camadas aí
você foi lá e falou assim Ô legal massa massa muito bom mesmo show de bola então a gente fala aqui galera a gente vai testar aí Mobo vai testar api vai testar a web né legal bacana vem cá deixa eu falar eu tava aqui pensando que a gente poderia na parte mobile testar aqui utilizando é claro né as validações funcionais certo que a gente vai definir aqui posteriormente mas também acho que a gente poderia fazer aqui validações não funcionais ninguém tá falando de app especificamente Puxa tem um negócio aqui que é muito importante dentro do
dos Testes que estão que vão ser realizados aqui dentro do mobile [Música] 6.1.1 6.1.1 e aqui 6.1.2 validações funcionais aí aqui a gente vai colocar uma lista de testes a serem realizados tá uma lista de testes a serem realizados no Mobo Ok e aqui nas validações não funcionais a gente vai colocar uma lista de testes não funcionais eu já vou até colocar um aqui para vocês tá por exemplo a gente poderia colocar aqui que a gente vai testar é compatibilidade entre sistemas operacionais a gente vai colocar aqui também acessibilidade e que a gente vai colocar
também performance do dispositivo Ok e que aqui ó nos nossos testes a serem realizados no lobo a gente vai colocar alguns testes aqui por enquanto não vamos focar muito nisso tá bom eu vou dizer que sim que eu ia colocar que eu quero testar uma transferência maior que 50 mil ou maior que o saldo e uma transferência menor que o saldo Ok eu quero testar essas duas coisas aqui no mobile aí você vai lá e olha para isso daqui e você pensa Caraca cara que bacana eu tô olhando para o Mobo e tô dizendo aqui
o que que é que eu vou fazer de testes nessas nessas áreas aqui entendeu Aí você vem aqui e fala outra coisa você fala ó eu quero também definir aqui o que eu quero automatizar eu vim aqui e falo o que eu quero por exemplo definir quais são ferramentas que eu vou utilizar eu falo Ah vou utilizar de Unity vou utilizar apium e começa a colocar aqui quais são as ferramentas e você vem aqui e fala também quais são os testes que você vai realizar aqui de maneira automatizada aí você vai lá e falar eu
quero de todos os que eu tenho eu quero automatizar só um que é o que vai ser o mais comum né uma transferência maior que o saldo tá entendendo você tá aqui agora pensando em quais são as características que você quer colocar definir dentro da sua abordagem de testes pensar em tudo isso daqui exige que você que o Whey conheça um sobre o que são Artefatos de teste dois sobre o que são testes em si teste de software em si três que você conheça Qual é o seu papel que você tem a curiosidade de perguntar
que você participe desde o início então tem várias características que estão envolvidas diretamente aqui a sua atuação enquanto você define estratégias de teste ou planos de teste ok bacana né isso também é algo que você desenvolve sendo que o Ei dentro da sua dentro do seu time tá bom Outra coisa que acontece também dentro do dia a dia de um keeway é que ele ou ela identifica os testes a serem executados como que como que isso funciona pode funcionar de diversas formas Tá bom vou falar uma delas aqui que é de você identificar o que
testar através de uso de técnicas tá bom só o que ele faz ele faz assim ele vem aqui e lê aqui uma regra por exemplo clientes não podem transferir mais que 50 mil para pessoas não cadastradas como favorecido para quem é que o Ei que olha isso daqui entendeu a pessoa já vê aqui um número ela fala preciso usar partição de equivalência é uma técnica e preciso usar análise do valor limite que também é outra técnica aí como que o tio Way faz Em vez dele sair escrevendo o que que vai testar ele vem aqui
copia essa regra cola no outro documento e fala assim vou aplicar Colocar assim ó técnicas acho que eu tenho que aplicar partição e equivalência ele fala depois de aplicar partição de equivalência Tem que aplicar A análise do valor limite aí fala partição equivalência vamos lá clientes não podem transferir mais do que 50 mil para pessoas não cadastrados como favorecido ele fala quais são entradas acho que não vai dar tempo de falar do valor limite tá ele fala assim Quais são as entradas para esse requisito aqui Quais são as entradas que que o usuário vai ter
que informar para o sistema ele fala ele vai ter que informar o valor e ele vai ter que informar também o quê que ele vai ter que informar quem tem aí ele vai ter que informar também o favorecido mas nem favorecida tipo tipo do cliente aí fala qual que é o qual que são aqui as partições de equivalência do valor partição de equivalência são as faixas de valores segundos aqui ó mais do que 50 mil e menos do que 50 mil entendeu então aqui vai ser uma partição vai ser maior que 50 mil e a
outra vai ser menor ou igual que 50 mil entenderam Essas são as duas partições partição número um aqui um e a partição número 2 que é um e dois que é menor igual 50 mil e os tipos de clientes quais são os tipos de clientes que a gente tem é o cliente que é favorecido e tem o cliente que é não favorecido tá entendendo isso daqui é a aplicação de uma técnica que técnica partição de equivalência com base na partição de equivalência eu consegui identificar Quais são os valores possíveis eu descobri que aqui para o
valor a gente tem duas partições e para o tipo do cliente a gente tem duas partições aí a gente vem com uma outra técnica chamada permutação a permutação diz o seguinte ó vou colocar aqui ó um ponto dois ok permutação a permutação diz o seguinte você tem que criar aqui um teste Ou você tem que criar um número de testes que é equivalente a multiplicação da quantidade de perguntas de partições que você tem em cada entrada que é correspondente Então veja que 2 e 2 2 x 2 = 4 então porque eu faço aqui 1
x 1 x 1 x 2 e 1 que é o meu primeiro teste aí eu tenho o meu segundo terceiro e quarto teste dois três quatro certo então vem aqui e faço o quê primeiro teste maior que 50 mil favorecido eu vim aqui ó menor ou igual que 50 mil com favorecido aí eu faço maior que 50 mil com não favorecido eu venho aqui e Faço menor ou igual que 50 mil com não favorecido entendeu aqui a ideia esse daqui são os meus testes e cada teste tem que ter um resultado esperado Então vem aqui
e falo o que que eu espero quando for maior que 50 mil com favorecido espero que transfira é isso cliente não podem transferir mais do que 50 mil para pessoas não cadastradas mas é mais que 50 mil e favorecido menor que 50 mil pode transferir maior que 50 mil não transfere menor igual que 50 mil que não favorecido bota transferir jovem tá entendendo quatro testes aqui nessa parte aqui ó identificar os testes a serem executados é você aplicar técnica de teste para identificar todos os testes que precisam ser realizados aqui eu tô falando só de
uma regra com uma regra eu já consegui encontrar quatro testes quatro Quem dirá com todas as outras sabe uma coisa durante uma boa parte do período que existe desde a formalização da área de testes de software até agora existiu um hiato no meio do caminho um período que eu posso chamar de período obscuro o período obscuro o período da burrice que é um período onde nós que o ex paramos de estudar sobre testes sabe o que a gente começou a pensar a gente pensou assim sabe o que é ser gay sei que o é encontrar
bug sabe o que é ser que sai clicando por aí tentando quebrar as coisas a gente parou de ser intelectuais nós paramos de pensar nas coisas de contribuir com as coisas e a gente passou a ser simplesmente a pessoas que sai implicando por aí Ah tem ciência por trás de testes não ah tem técnica não tem estratégia não que que você faz ah eu escrevo bdd e o automatismo teste é esse o meu papel que mais você faz não é isso é o suficiente já eu pergunto para você a gente a gente está aqui agora
nesse nesse momento da aula Aqui deixa eu te falou só de quatro atividades que o kiwi faz quatro e já rendeu aqui cara uma aula de uma hora de aula pelo amor de deus o que que eu preciso dizer para você para você entender que existe centenas milhares de conteúdos científicos que você precisa ler para você melhorar sua atuação em teste de software tá entendendo porque se a gente se a gente começa a entender que o nosso papel um papel superficial que qualquer pessoa pode fazer o seu salário nunca vai aumentar 30%, você pode esquecer
disso sua carreira não vai se alavancada porque você tá lá de boas meu tentando fazer um trabalho Meia Boca reba sabe leitinho Raso você tá lá gostando daquilo cara tipo meu trabalhar com teste de software é igual trabalhar com qualquer outra profissão você tem que se aprofundar dentro do conhecimento só dentro do meu canal tem mais de 300 vídeos para ajudar você a entender um pouco mais sobre o seu papel Só que ainda assim você precisa a cada vídeo que você assistir entendeu outros outras possibilidades de sair buscando sabe aprofundar o seu papel porque atuar
Como que o rei que recebe lá mais de 10 mil reais por mês que que tem respeito do seu time que consegue implementar coisas bacanas dentro do seu time tem a ver constar preparado para tudo isso entendeu não é simplesmente sair lá clicando achando que tá arrebentando não automatizou um teste e puxa já sou o que o e mais Sênior da face da terra pelo amor de Deus entenda o seu papel é muito mais do que isso OK vamos lá vamos seguir como eu disse a gente ainda tá aqui nesse segundo nesse segundo item quando
a gente fala de utilização de ferramentas de teste é assim até agora até agora aqui a gente utilizou algumas coisas a gente utilizou aqui as informações que estão aqui dentro né a gente utilizou aqui uma uma sei lá uma forma de pensar na abordagem dos Testes a gente Pensou em uma forma de elencar Quais são os testes a serem executados a gente pensou aqui em quais são né o código aqui e também vamos ter que pensar depois em quais são os testes que vão ser automatizados para testar isso daqui de uma maneira mais vamos dizer
assim testar que as coisas que são mecânicas né através de código e para tudo isso daqui tem ferramenta para tudo isso tem ferramenta vou dar um exemplo para vocês ó existe uma ferramenta que eu tô usando agora chamado aqui o teste essa ferramenta que eu peço uma ferramenta da tricents Ok essa ferramenta da twicents você tem lá por exemplo uma possibilidade de você no seu teste controlar Quais são os testes que estão sendo executados por exemplo entendeu então se você tá dentro de uma de um ambiente onde você precisa documentar os testes você consegue ir
lá e criar uma suíte de testes e criando uma suíte de teste você consegue executar essa suíte de testes depois ela pode ter características relacionadas ao teste quando que começou quando finalizou etc tem tudo isso certo e aí para quem tá gerenciando a execução dos Testes consegue ver quantos testes por executados com os passados quantos passaram quantos falharam quando estão bloqueados entendeu para você que quer revisar código você tem lá por exemplo ferramentas como o próprio por exemplo né o desenvolvedor foi lá e subiu um determinado código você pode ir lá e analisar esse esse
teste esse código que foi realizado tá vendo e aí você tá lá analisando o código do desenvolvedor e de repente você vai lá e fala assim olha aqui tem uma coisa que pode melhorar você vem aqui clica no botãozinho de mais e deixar um recado para o desenvolvedor é uma ferramenta para contribuir com você na disciplina de testes né tem outras também tem lá por exemplo uma ferramenta chamada é uma ferramenta que te ajuda a você gravar os testes que você está executando Então o que acontece você está executando um teste um dispositivo móvel você
vai lá e clica lá no botão e ele começa a gravar as telas para você e gravar execução dos testes para você então eu que Whey dentro do meu dentro do meu dia a dia eu tenho que também utilizar ferramentas de execução de testes para me ajudar a conseguir ter uma performance melhor da execução do meu teste eu também tenho que executar testes funcionais e não funcionais como funciona isso eu tava mostrando aqui para vocês né que a gente tem aqui uma né os testes que foram pensados aqui então o que eu faço tenho esses
testes que eu pensei eu abro o software e começa a executar Ah deixa eu ver aqui vou colocar aqui 50 mil de transferência e vou escolher um cliente que é favorecido e tem que transferir então depois que eu apertar o botão enviar tem que aparecer uma mensagem de sucesso agora vou colocar menor que 50 mil como favorecido e tem que transferir também tem que dar sucesso agora vou colocar maior que 50 mil não favorecido quando eu apertar o botão entrar tem que falar não transfira Quando eu colocar aqui menor igual 50 mil para não favorecer
tem que transferir E aí eu vou lá e faço e testo e funciona logo eu executei quatro testes mas eu falei para vocês também que a gente também tava pensando aqui na nossa abordagem de teste fazer testes de acessibilidade por exemplo né então eu venho aqui vou dar um exemplo bem bacana aqui para vocês ó eu venho aqui e pego o YouTube por exemplo ok peguei aqui o YouTube aí que que eu vou fazer eu vou vir aqui ó e vou clicar com o botão direito inspecionar e aqui no inspecionar deixa eu atualizar aqui aí
pronto e aqui no inspecionar eu vou clicar aqui ó no Lighthouse tá vendo e no Lighthouse eu tenho aqui algumas características que alguns testes não funcionassem realizados olha só que bacana vou testar aqui para desktop e vou testar aqui ó performance acessibilidade s ou tá vendo ó vou colocar aqui eu quero testar a sensibilidade fiz isso daqui vou executar então né o teste Então vem aqui ó análise peixe tá vendo é o que vai fazer ele vai executar um teste de acessibilidade para mim certo e vai executar aqui esse teste de acessibilidade para mim eu
vou deixar rodando aqui só para a gente não perder muito tempo tá mas ele vai rodar um teste de acessibilidade depois que ele roda esse teste de acessibilidade eu estou aqui testando não funcional eu posso testar compatibilidade entre sistemas operacionais Posso testar performance Posso testar diversas coisas aqui entende com ferramentas distintas formas diferentes de testar não é bacana isso você é sensacional então eu que Whey tem que ser capaz de testar isso eu que o Whey também tem que ser capaz de analisar e mitigar riscos do produto como funciona isso funciona assim ó eu venho
aqui e olho para essa funcionalidade e eu penso assim quais são possíveis problemas que podem acontecer no futuro breve quais são e eu começo a me perguntar isso E aí eu vejo aqui fala assim se eu transferir se eu fazer uma se eu fizer uma transferência e o comprovante de transferência vier com o valor errado Puxa cara isso vai ser muito ruim para organização Já pensou o cliente vai lá e faz uma transferência de 10 mil e quando vai para o E aí acontece tudo certinho sabe só que vai para o comprovante do da transferência
um valor diferente lá no comprovante de transferência em vez de 10 mil tá mil aí que que o cliente pensa você fala puxa ele nunca vai pensar que o problema é um bug da aplicação né um defeito na aplicação ele fala transferir 1000 Aí ele vai lá e transfere mais 10 mil e transferiu 20 mil no total tão entendendo Já pensou o tamanho do problema disso então eu juro penso nos Riscos que podem acontecer então eu vou lá e Documento esses riscos também vão vir aqui e falou ó Puxa tem um risco né até colocar
aqui para vocês ó riscos um risco aqui que é terem valores divergentes Puxa esse daqui seria muito ruim cara então o que que eu faço para evitar que esse risco se transforme em um problema em potencial eu faço um negócio que se chama mitigação mitigação é como que eu faço para que esse risco não se torne um problema em potencial vou lá e penso em testes que eu posso fazer para evitar que esse problema se transforme um problema potencial esse risco se transforma em um problema em potencial entenderam e o Júlio que o Ei ficam
analisando esses riscos o tempo todo então essa também é uma atividade minha outra coisa que eu faço é reportar defeitos certo reportar e gerenciar defeitos Então o que acontece Às vezes eu venho aqui pego esses todos esses testes aqui tá vendo aí vamos dizer que eu rodei o primeiro e ele passou teve sucesso eu vim aqui e olho para o segundo passou também olha para o terceiro e ele não passou ele falhou então o que que eu tenho que fazer eu tenho que reportar um defeito aí no defeito eu falo falo olha ao tentar transferir
50 mil para um não favorecido o sistema permitiu a transação ao invés de evitar que ela acontecesse entendeu Vou lá e coloco Quais são as quais são as fotos do que aconteceu coloco Quais são as evidências que isso realmente aconteceu coloca o apito eu tava testando no Chrome coloca o total testando no Windows coloca o que sabe eu tava testando com o cliente José eu transferir para a Adriana sabe vou colocar tudo isso daqui lá no defeito porque porque isso daqui vai ser depois assumido por um desenvolvedor que vai corrigir esse defeito corrigir nesse defeito
ele vai então conseguir lidar com isso entendeu vai conseguir resolver essa esse problema Então quem faz Essa gestão dos defeitos também é o que Whey outra coisa que o Whey faz é automatizar os testes funcionais e não funcionais então eu posso vir aqui pegar esses quatro testes aqui eu só um deles vou pegar um teste desse daqui e criar uma automação do teste vou mostrar aqui para vocês um exemplo bem simples aqui de como a gente poderia fazer isso Eu poderia usar um Framework aqui para testar esse essa funcionalidade Então vamos dizer aqui que eu
tô usando por exemplo ok eu vou lá e escrevo assim transferência aqui mostrando para vocês aqui como que seria uma automação de um teste aqui utilizando Mooca Tá bom então é que seria assim ó valor o saldo menor que a transferência aqui eu venho e falo alguma coisa assim expert cliente que tem saldo cliente que tem saldo fala que o cliente que não tem saldo por exemplo José 300 vamos dizer que o José não tem a 300 tá bom ponto tio daqui a tudo fica difícil tá mas é só para que vocês possam entender aí
como que funciona mais ou menos tá bom olha lá isso daqui é um teste que eu tô fazendo para validar que se o José tá tentando transferir com o valor da transferência que é menor do que o valor do saldo que vai ser falso entende isso daqui eu poderia rodar isso daqui mil vezes ele daria mil vezes o mesmo resultado A não ser que alguém vem aqui e Muda alguma coisa no código sei lá colocou maior aqui já daria erro tão entendendo isso daqui é um teste automatizado que eu tô fazendo a nível de código
que mais que eu posso fazer eu posso fazer melhoria do processo de qualidade Poxa tô vendo que eu julho não estou participando das reuniões onde tem essa a discussão desse documento que que eu faço eu melhoro o processo digo gente eu não estou participando dessas reuniões e não estar participando dessas reuniões seria um problema e eu mostro quais são Dados que é que fazem com que isso não seja um processo de qualidade entende Então essas são aí Esses são aí alguns exemplos tá então como eu disse aí para vocês pequenas demonstrações do que um que
o Whey faz no seu dia a dia gostou desse vídeo Curtiu essa aula não esquece de deixar seu like de comentar aí também embaixo né nos comentários do vídeo sobre o que você achou dessa aula e também se inscrever no canal né eu sei que tem muitas pessoas que não tem aí uma uma base fundamental em teste de software que faz com que elas já soubessem que tudo isso daqui são coisas que elas podem fazer no seu dia a dia sabe se esse é o seu caso ou se você conhece amigos que precisavam assistir essa
aula manda para eles ajuda eles também a conseguir entender mais aí sobre testes de software espero que vocês tenham gostado dessa aula muito sucesso a todos vocês obrigado pela pela audiência a gente se vê no nosso próximo vídeo Um abraço tchau tchau