/brodemy

A website replicating udemy capabilities

Primary LanguageJupyter NotebookMIT LicenseMIT

BROdemy

BROdemy é um uma aplicação web voltada ao ensino de forma gratuita. Seu objetivo é facilitar o acesso à educação de qualidade e sem custo.

Instalação

$ node -v
v10.4.0
$ npm -v
6.1.0
  • Instalado o Node, clone o repositório do GitHub:
$ git clone https://github.com/LRAbbade/brodemy.git
  • Entre no diretório e faça o npm instalar as dependências necessárias:
$ cd brodemy
$ npm install
$ mongod
  • Para checar se o MongoDB está em execução, é possível acessá-lo diretamente pelo comando mongo no terminal, ou (somente no Linux) checar seu status com:
$ sudo service mongod status
  • Inicie então a aplicação:
$ node app

Para acessar o site clique no link http://localhost:8080/

Testes

Para testar as funcionalidades do BRODemy, foi desenvolvida uma classe de testes unitários em Python, utilizando o selenium.

  • Para executar o script de testes, primeiramente instale os requisitos utilizando o pip:
$ cd Tests
$ pip install requirements.txt
  • Baixe o driver do chrome e coloque o arquivo em uma pasta acessada pela variável PATH do sistema, usualmente /usr/local/bin/
$ sudo mv chromedriver /usr/local/bin
  • Execute o script de testes:
$ python bro_tests.py -v
  • O resultado esperado é como abaixo:
test_right_login (__main__.BRO_tests) ...
[SUCCESS] Found sign in button
[SUCCESS] Found buttons in login
[SUCCESS] Found two input elements in login page
[CHECKPOINT] Login executed
[SUCCESS] Found two account buttons on main page after login
[SUCCESS] Found 'Torne-se um instrutor' button
[SUCCESS] Found 'Minha Conta' button
[SUCCESS] Login worked correctly
ok
test_wrong_login (__main__.BRO_tests) ...
[SUCCESS] Found sign in button
[SUCCESS] Found buttons in login
[SUCCESS] Got invalid login element
ok

----------------------------------------------------------------------
Ran 2 tests in 11.172s

OK

Finished running tests