<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fiery_heart的博客]]></title><description><![CDATA[学习，进步]]></description><link>https://blog.youkuaiyun.com/fiery_heart</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fiery_heart]]></copyright><item><title><![CDATA[【6】包注意事项&文件操作]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/109900401</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/109900401</guid><author>fiery_heart</author><pubDate>Sat, 21 Nov 2020 17:47:13 +0800</pubDate><description><![CDATA[包

包的路径从GOPATH/src后面的路径开始写起，路径分隔符用/
想被别的包包调用，标识符是字母都要大写
导入包时可以指定别名
导入包但是不想使用包内的标识符，需要使用匿名导入
每个包导入的时候会自动执行一个名为init()的函数，它没有参数也没有返回值，并且不能手动调用

文件操作
按行读取
package main

import (
	"bufio"
	"fmt"
	"io"
	"os"
)

func main() {
	file, err := os.Open("test.txt")
	if]]></description><category></category></item><item><title><![CDATA[【5】结构体方法函数接口的理解]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/109899817</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/109899817</guid><author>fiery_heart</author><pubDate>Sat, 21 Nov 2020 15:50:34 +0800</pubDate><description><![CDATA[结构体：
type person sturct{
	name string
	age int
}

可以把go中的结构体想象成python中的函数，定义结构的时候，结构体里面的变量，就是python里的实例属性
go里面没有__init__，但是可以自己实现一个newPerson的方法，就当作init了
方法：
func (p *person) reName () {
	p.name = "改名了"
}

至于go里的方法，一般都用指针接收者，（值接收者相当于拷贝了一份值的副本，不会改变外部的值）
可以把结]]></description><category></category></item><item><title><![CDATA[数据库上下文管理器]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/108519808</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/108519808</guid><author>fiery_heart</author><pubDate>Thu, 10 Sep 2020 17:58:01 +0800</pubDate><description><![CDATA[import pymysql


class MysqlDB:
    def __init__(self, data_conf):
        self.connect = pymysql.connect(**data_conf)
        self.cursor = self.connect.cursor()

    def __enter__(self):
        return self.cursor

    def __exit__(self, exc_type, exc_va]]></description><category></category></item><item><title><![CDATA[2黑盒测试设计用例方法]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/107685627</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/107685627</guid><author>fiery_heart</author><pubDate>Fri, 31 Jul 2020 15:10:41 +0800</pubDate><description><![CDATA[等价类
定义：输入具有代表性的子集
等价类分为

有效等价类----满足需求
无效等价类----不满足需求

判定表
判定表简述：判定表是把作为条件的所有输入的各种条件以及对应输出值都罗列出来而形成的表格。它能够将复杂的问题按照各种可能的情况全部列举出来，简明并可避免遗漏。因此，利用决策表能够设计出完整的测试用例集合。
场景法
每个事件触发时的情景便形成了场景。而同一事件不同的出发顺序和处理结果形成事件流场景法：通过运用场景来对系统的功能点或业务流程进行描述，从而提高测试效果的一种方法。场景法一般包含基本流]]></description><category></category></item><item><title><![CDATA[1测试用例概述]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/107664365</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/107664365</guid><author>fiery_heart</author><pubDate>Wed, 29 Jul 2020 15:06:16 +0800</pubDate><description><![CDATA[测试用例的定义

测试用例（Test Case）是为特定的目的而设计的一组测试输入、执行条件和预期的结果，以便测试某个程序路径或核实是否满足某个特定需求。通过大量的测试用例来检验软件的运行效果，它是指导测试工作进行的依据。
ps：通过设计输入数据，执行步骤，按此步骤应产生的预期结果
测试用例（Test Case）是为了高效率的发现软件缺陷而精心设计的少量测试数据。实际测试中，由于无法达到穷举测试，所以需要大量输入数据中精选有代表性或特殊性的数据来作为测试数据。好的测试用例应该能发现尚未发现的软件缺陷。

测]]></description><category></category></item><item><title><![CDATA[【4】go语言的学习之方法]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/105393281</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/105393281</guid><author>fiery_heart</author><pubDate>Thu, 09 Apr 2020 11:17:11 +0800</pubDate><description><![CDATA[在go语言中，可以给任意自定义类型添加方法
1&gt;面向过程与面向对象的区别
package main

import "fmt"

// 面向过程
func Add01(a, b int) int {
	return a + b
}

// 面向方法
type long int
// 方法的定义： func (变量 类型) 方法名 (参数 类型) 返回值 {}
// 其中 (变量 类型) 又叫...]]></description><category></category></item><item><title><![CDATA[【2】go语言的学习之数组、切片、map和结构体]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/104232462</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/104232462</guid><author>fiery_heart</author><pubDate>Tue, 03 Mar 2020 15:11:27 +0800</pubDate><description><![CDATA[数组
1&gt; 数组的定义
package main

import "fmt"

func main() {
	// 1、使用var关键字定义，需要指定数组的长度及数组元素的数据类型
	var arr1 [3]int
	// 2、使用 := 定义并指定长度，使用这种方法需要给数组初值
	arr2 := [3]int{1, 3, 5}
	/// 3、使用 := 定义不指定长度，同样要给初值
	a...]]></description><category></category></item><item><title><![CDATA[【3】go语言的学习之函数与指针]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/104221208</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/104221208</guid><author>fiery_heart</author><pubDate>Sat, 08 Feb 2020 13:53:56 +0800</pubDate><description><![CDATA[函数的定义格式
func funcname (/*参数列表*/)(/*a type, b type*/){
	//函数体
	return a, b
}

不定参数列表的函数
package main

import "fmt"

// ...int 不定长参数，可以为0个或多个
func sum(numbers ...int) int {
	s := 0
	for _, v := range nu...]]></description><category></category></item><item><title><![CDATA[【1】go语言的学习之基础语法]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/104209409</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/104209409</guid><author>fiery_heart</author><pubDate>Fri, 07 Feb 2020 19:09:18 +0800</pubDate><description><![CDATA[变量定义
1&gt; 使用var关键词声明变量，不赋值
func main() {
	var a int 
	var s string
	var t bool
	fmt.Println(a, s, t)
}
// int的默认值为0 string的默认值为空串 bool的默认值为false

2&gt; 使用var关键词声明变量，赋值
func main() {
	var a, b int = 3...]]></description><category></category></item><item><title><![CDATA[随机生成ua的库]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/102801254</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/102801254</guid><author>fiery_heart</author><pubDate>Tue, 29 Oct 2019 15:58:51 +0800</pubDate><description><![CDATA[from fake_useragent import UserAgent
ua = UserAgent()
ua.ie
Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US);
ua.chrome
Mozilla/5.0 (compatible; MSIE 10.0; Macintosh; Intel Mac OS X 10_7_3; T...]]></description><category></category></item><item><title><![CDATA[使用flask_socketio实现服务端向客户端定时推送]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/100564766</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/100564766</guid><author>fiery_heart</author><pubDate>Thu, 05 Sep 2019 18:47:07 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/luozx207/p/9714487.html

]]></description><category></category></item><item><title><![CDATA[ubuntu16.04安装pip3]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/96278552</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/96278552</guid><author>fiery_heart</author><pubDate>Wed, 17 Jul 2019 10:11:52 +0800</pubDate><description><![CDATA[点击此处有用的文章记录一下

]]></description><category></category></item><item><title><![CDATA[ubuntu16.04安装anaocnda3]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/95211784</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/95211784</guid><author>fiery_heart</author><pubDate>Tue, 09 Jul 2019 17:14:09 +0800</pubDate><description><![CDATA[首先下载anaconda3的包，去这里下载：wget https://repo.continuum.io/archive/Anaconda3-2019.03-Linux-x86_64.sh
然后执行sh文件：bash Anaconda3-2019.03-Linux-x86_64.sh
接下来就根据提示按回车，属于yes
最后安装完成以后，如果输入python发现不是anaconda里的话，执行 v...]]></description><category></category></item><item><title><![CDATA[用python向MongoDB插入时间字段]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/90229610</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/90229610</guid><author>fiery_heart</author><pubDate>Wed, 15 May 2019 09:32:50 +0800</pubDate><description><![CDATA[import pymongo
from dateutil import parser
dateStr = "2019-05-14 01:11:11"
myDatetime = parser.parse(dateStr)
client = pymongo.MongoClient(host="127.0.0.1", port=27017)
db = client["test"]
db.ceshi.in...]]></description><category></category></item><item><title><![CDATA[python爬虫]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/85709691</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/85709691</guid><author>fiery_heart</author><pubDate>Thu, 03 Jan 2019 18:10:42 +0800</pubDate><description><![CDATA[整理一些平常看到的关于爬虫的文章
2019-01-03
Python爬虫开源项目代码，爬取微信、淘宝、豆瓣、知乎、新浪微博、QQ、去哪网等 代码整理

]]></description><category></category></item><item><title><![CDATA[es插件elasticsearch-head的安装]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/85275006</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/85275006</guid><author>fiery_heart</author><pubDate>Fri, 28 Dec 2018 15:57:09 +0800</pubDate><description><![CDATA[
下载


wget https://github.com/mobz/elasticsearch-head/archive/master.zip


解压


unzip master.zip


elasticsearch-head是一个提供图形化的插件，其图形化是基于node.js的，所以我们需要先准备好node.js环境


wget https://nodejs.org/dist/v8.1...]]></description><category></category></item><item><title><![CDATA[centos7下安装es5.*]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/85265585</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/85265585</guid><author>fiery_heart</author><pubDate>Fri, 28 Dec 2018 15:56:32 +0800</pubDate><description><![CDATA[首先需要安装java的jdk

执行命令yum -y list java*查看可安装java版本。执行成功后可以看见如下的结果

选择一个java版本进行安装，一定要选择 -devel 的安装，因为这个安装的是jdk，而不带这个安装下来的是jre。执行以下命令进行安装

yum install -y java-1.8.0-openjdk-devel.x86_64
等待安装完成即可。


使用 ja...]]></description><category></category></item><item><title><![CDATA[centos7下mongodb安装和配置]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/84401507</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/84401507</guid><author>fiery_heart</author><pubDate>Fri, 23 Nov 2018 17:56:38 +0800</pubDate><description><![CDATA[转：centos7下mongodb安装和配置

]]></description><category></category></item><item><title><![CDATA[python一些基础]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/83055197</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/83055197</guid><author>fiery_heart</author><pubDate>Mon, 15 Oct 2018 10:30:58 +0800</pubDate><description><![CDATA[list、tuple、dict、set
共性：都是可以迭代的。




名称
可变性
值
可重复性
是否有序
其他特点




list
可变，可以修改元素
[1,2]
值可以重复
有序
相比于dict拥有占用内存小的特点，常用于堆栈的处理


set
可以修改元素
(1,2)
值不可以重复
无序
常用于判断值是否存在


dict
键不可变，值可变
{1:1,2:2}
键不可以重复，值可以重复
...]]></description><category></category></item><item><title><![CDATA[在windows上安装和启动Elasticsearch+kibana]]></title><link>https://blog.youkuaiyun.com/fiery_heart/article/details/82747439</link><guid>https://blog.youkuaiyun.com/fiery_heart/article/details/82747439</guid><author>fiery_heart</author><pubDate>Mon, 17 Sep 2018 19:44:00 +0800</pubDate><description><![CDATA[首先需要安装JDK
至少需要1.8.0_73以上版本，参考这篇文章https://blog.youkuaiyun.com/u012934325/article/details/73441617/
下载和解压缩Elasticsearch安装包并运行elasticsearch.bat
elasticsearch.bat在解压缩以后的bin目录下，直接双击运行即可

如图，显示started就表示运行成功，可以去1...]]></description><category></category></item></channel></rss>